raphael_george
Messages postés60Date d'inscriptionsamedi 19 novembre 2005StatutMembreDernière intervention22 octobre 2007
-
21 avril 2007 à 17:01
cs_MPi
Messages postés3877Date d'inscriptionmardi 19 mars 2002StatutMembreDernière intervention17 août 2018
-
21 avril 2007 à 21:22
Salut à tous
je voudrais faire un test permanent sur ma feuille excel....
En fait:
If Range("AG4").Value = "Oui" Then
'mettre cellule x en couleur
else
'mettre un fond blanc
end if
quand je place dans un module cette syntaxe, il bloque sur la sélection Range("AG4")
Je n'arrive pas a comprendre.
je ne sais pas où le placer dans le code
et si ma syntaxe est correcte
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 21 avril 2007 à 17:23
Salut
En général, on donne ce genre de boulot a un Timer, mais sous VBA, cela oblige a utiliser un UserForm.
En fait, il vaut mieux exécuter ta fonction quand la feuille signale qu'il y a eu un changement.
Ainsi, dans la WorkSheet, il y a l'évènement _Change qui se déclenche à chaque fois que le contenu de la feuille est modifié.
Cet évènement te fournit le Range de la section modifiée.
A toi de vérifier si la ou les cellules modifiées (contenues dans ce Range) doivent être testée avec ta fonction.
(Voir les attributs Address ou Column/Row de la variable Target représentant le Range)
Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés
Champion du monde de boule de cristal - 2005 Le savoir est la seule matière qui s'accroit quand on la partage (Socrate)
cs_Jack
Messages postés14006Date d'inscriptionsamedi 29 décembre 2001StatutModérateurDernière intervention28 août 201579 21 avril 2007 à 17:29
PS : Ton test se fait avec l'orthographe exacte du texte "Oui", donc majuscules et minuscules ne sont pas les mêmes lettres.
Voir UCase ou LCase
Pour être plus clair dans mon explication ci-dessus :
Si tu veux faire cette colorisation dans n'importe quelle cellule de la feuille, il te suffit de faire le test avec Target :
If Target.Value = "Oui" Then
Si tu veux ne le faire que dans une seule colonne, là, il faudra tester les caractéristiques de Target