|
|
|
|
Bonjour,
J'ai un problème avec le lancement d'une macro Excel.
Je declenche une macro lorsque la valeur d'une cellule change. Ici il s'agit de la cellule A3
Ca ressembleà ca :
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$A$3" Then
Cells(2, 1) = "la cellule A3 a changé"
Macro1
End If
End Sub
Quand j'écris dans la cellule A3, ca fonctionne bien.
Par contre, quand je fais un copier coller de plusique cellules (A3 en faisant partie), la marco ne se declenche pas.
Elle se declenche quand je double clique dans la cellule, comme pour lui dire "eh oh ! la valeur a changé !
Comment faire pour lui dire que la cellule a changé par ce copier coller ?
Question bonus : quel est le code permettant de dire qu'une valeur dans une plage de cellule a changé ?
comment changer le target.address pour qu'il prenne une plage de cellules ?
Merci pour votre aide
Bonjour,
Dim MemoCell As String
Private Sub Worksheet_Calculate()
If Cells(3, 1) <> MemoCell Then
Cells(2, 1) = "la cellule A3 = " & Cells(3, 1).Value
MemoCell = Cells(3, 1)
'Code....
End If
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address = "$A$3" And Cells(3, 1) <> MemoCell Then
Cells(2, 1) = "la cellule A3 = " & Cells(3, 1).Value
MemoCell = Cells(3, 1)
'Code....
End If
End Sub
A+ L'expérience instruit plus sûrement que le conseil. (André Gide) |