Bonjour à tous,
Il est probable que l'intitulé ne soit pas très clair, mais ce n'est pas simple à expliquer en une ligne.
Je vais donc essayer d'exposer mon problème clairement et simplement.
Lorsque j'encode une valeur dans une cellule (X,Y), cette modification est détectée par une procédure du genre :
afin de lancer une procédure "calcul" qui... doit faire des tas de choses.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 Private Sub Worksheet_Change(ByVal Target As Range) CELLULE = Target.Address calcul CELLULE, Target.Value end sub
Parmi ces choses, elle analyse la valeur encodée dans notre cellule, et si le format ne lui convient pas, le modifie pour remplacer la donnée telle qu'elle a été saisie, et .... pardaf ! ceci est considéré comme une nouvelle saisie et on recommence le processus qui tourne en rond !
La procédure de l'événement Change ne fait pas la différence entre la saisie d'une valeur au clavier ou le stockage d'une donnée dans une cellule par une macro.
Ma question:
Comment puis-je empêcher,lors de la correction du contenu de la cellule par la macro VBA, de déclencher la procédure de l'événement Change ?
J'espère avoir été assez clair (sinon, je suis prêt à essayer de réexpliquer ), et j'espère tout autant que quelqu'un pourra éclairer ma lanterne !
Merci d'avance à ceux qui seront tentés d'essayer !
Mike
Partager