Comment lancer une macro quand la valeur d'un cell change.

Résolu
cs_vevel Messages postés 62 Date d'inscription jeudi 26 mai 2005 Statut Membre Dernière intervention 30 mai 2017 - 9 mai 2007 à 14:41
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 - 9 mai 2007 à 15:02
Bonjour, je voudrais savoir quelle est la commande de privat sub pour lancer une macro lorsque la valeur d'une cell change. Pour que la macro me remette a jour un liste dans un menu deroulant.

PAr exemple si je tape 11, il me met uniquement les valeurs commancant par 11...

Et je voulais connaitre la comande pour remettre a jour un menu deroulant qui se nome "zone combiné 1".

Merci d'avance pour vos reponses.

Vevel.

3 réponses

jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
9 mai 2007 à 14:46
Salut,
Tu peux peu être regarder du cote de l'événement suivant de l'objet WorkSheet
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

cet événement ne se déclanchera que lorsque tu auras changé de cellule après avoir modifier la valeur.

@+: Ju£i?n
Pensez: Réponse acceptée
3
cs_vevel Messages postés 62 Date d'inscription jeudi 26 mai 2005 Statut Membre Dernière intervention 30 mai 2017 1
9 mai 2007 à 14:56
Oui mais justement, j'ai essayé avec SelectionChange, mais ce ne fonctionne que lorsque tu selectionne la cells. J'aimerais savoir le code qui me premettrais de remettre a jour la liste lorsque je suis dans la cells, ou au pire, lorsque je valide avec entree.

Autre question, a quoi servent ByVal, Target et Range? Si je souhaite que la macro se lance lorsque je change la valeur de la cell A5 uniquement, dois-je changer ces valeurs et de quelle facon?
3
jrivet Messages postés 7392 Date d'inscription mercredi 23 avril 2003 Statut Membre Dernière intervention 6 avril 2012 60
9 mai 2007 à 15:02
Salut,
ByVal : Indique que l'argument est passé
<object id="alink_14" type="application/x-oleobject" classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"></object>[javascript:alink_14.Click() par valeur].
Target: Nom DU parametre recu avec l'événement
Range, Type du paramete.
Ceci est la déclaration de l'événement tu de DOIS pas la changer....

Tu peux essayer un truc du style
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If ActiveSheet.Range("A5").Value = 11 Then Call TaMacro
End Sub

Sinon pour "espionner" la valeur d'une cellule je ne sais pas trop comment faire

@+: Ju£i?n
Pensez: Réponse acceptée
0
Rejoignez-nous