Exécuter un code à condition qu'il y ai une modification sur une plage de données

Auzingueur

XLDnaute Junior
Salut salut, c'est encore moi.

Je reviens aujourd'hui pour un nouveau problème que je n'arrive pas à passer.

Voici le problème :

J'ai une macro sur ma sheet1.Change qui va engendrer des modifications sur ma sheet2. Selon les changements faits sur ma sheet 1 cela va affecter telle ou telle colonne sur ma sheet2.

Prenons un exemple :
-> Modification sur sheet1.Range("C1") modifiera Sheet2.Range("C2:D5")
-> Modification sur sheet1.Range("D1") modifiera Sheet2.Range("F2:H9")

De plus, j'ai la colonne E de ma Sheet2 qui sera amenée à être modifiée lors de la modification des colonnes C ou D et la colonne I qui sera amenée à être modifiée lors de la modification des colonnes F, G ou H.

Comme annoncé précédemment, la macro s'exécutant sur à chaque changement, j'aimerai ne pas avoir trop de temps de calcul, je cherche donc la condition qui permettrait de dire "Si j'ai un changement en colonne C ou D, alors je lance la macro pour la colonne E".

En espérant avoir été clair, au final je n'ai besoin que d'une ligne de condition, et ce qui me pause problème est la détection du changement sur mes colonnes.

Merci!
 

Dranreb

XLDnaute Barbatruc
Re : Exécuter un code à condition qu'il y ai une modification sur une plage de donnée

Bonjour.

Le paramètre Target d'une Worksheet_Change représente la plage modifiée. Il suffit de le contrôler par exemple Target.Column. Ou est le problème ?
 

Auzingueur

XLDnaute Junior
Re : Exécuter un code à condition qu'il y ai une modification sur une plage de donnée

Hum, je pense que mon problème viens de mon manque de maitrise des évènements ^^

D'après ce que tu viens de me dire, ma condition pour vérifier un changement en colonne C ou D serait tout simplement
"if Target.column = 3 or Target.column = 4"
C'est bien ça?
 

Discussions similaires

Statistiques des forums

Discussions
312 194
Messages
2 086 069
Membres
103 110
dernier inscrit
Privé