Macro qui s'execute quand on change une cellule

Résolu
likemonster Messages postés 40 Date d'inscription vendredi 16 janvier 2009 Statut Membre Dernière intervention 29 octobre 2009 - 17 mars 2009 à 19:01
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 - 18 mars 2009 à 12:06
Bonsoir, j'ai une macro qui s'execute sur 3 feuille. Elle commence en feuille 1 puis la 2 et termine sur la 3. Je veux après avoir executer la macro a partir d'un bouton de la feuille 1 pouvoir la relancer en changeant une valeur de la cellule B4 de la feuille 3. J'ai suivi ce code mais ça ne marche pas...

Private Sub Worksheet_Change(ByVal Target As Range) 
If Target.Address = Range("B4").Address Then
Call Macro1
End If   
End Sub

Cordialement

3 réponses

bigfish_le vrai Messages postés 1835 Date d'inscription vendredi 13 mai 2005 Statut Membre Dernière intervention 20 novembre 2013 15
18 mars 2009 à 08:50
Salut

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$B$4" Then
         Call Macro1
    End If
End Sub

ou bien

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(False, False) = "B4" Then
        Call Macro1
    End If
End Sub
3
zavier666 Messages postés 266 Date d'inscription mardi 7 septembre 2004 Statut Membre Dernière intervention 30 avril 2009 1
17 mars 2009 à 21:44
tu as tous les élements pour y arriver!!!!

ce que je ferais c'est qu'au début de la marco j'irai mettre en mémoire la valeur des trois cellules qui vont changer

val1 = feuil1.range("Xx").value

val2 = feuil2.range("Xx").value

val3 = feuil3.range("Xx").value

sur feuille 2

Private Sub Worksheet_Change(ByVal Target As Range) 

if val2 = valeur_cible_de_lancement then

call sub_suivante

endif

End Sub

Y'a pas de raison que cela ne fonctionne pas

--------------------------------------------------
Toujours + de VB et d'API => APi @ le Loupe
http://apialaloupe.free.fr
0
Renfield Messages postés 17287 Date d'inscription mercredi 2 janvier 2002 Statut Modérateur Dernière intervention 27 septembre 2021 74
18 mars 2009 à 12:06
clair que c'est bête d'allourdir le jeu avec

Target.Address = Range("B4").Address

alors que l'adresse, par définition, tu l'as...
0
Rejoignez-nous