Rechercher : dans
Par :

[VBA] Macro lancée quand A3 change de valeur

Dernière réponse le 22 mai 2008 à 11:05:25 ZaNet, le 22 mai 2008 à 10:24:17 
 Signaler ce message aux modérateurs

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

1

 lermite222, le 22 mai 2008 à 11:05:25
  • +1

Bonjour,
voir avec..
'Seule obligation, mettre la formule =A3 dans une cellule "perdue"

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)  

Répondre à lermite222