rss
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

[VBA] Changer la couleur d'une case

Posté par BarbeRousse, le dimanche 9 septembre 2007 à 10:25:45
Bonjour,

Je suis un véritable novice dans le domaine de VBA, il faudra donc m'expliquer un peut le code.

Je cherche donc à changer la couleur d'une case en fonction de la valeur contenue sur d'autres cases (ne se trouvant pas forcement sur la même feuille de calcul)

Autrement dit je veut que la couleur de A1 sur la feuille "truc" change si la case B5=65 sur la feuille "machin" ET si la case F6=48 sur la feuille "chose".
Configuration: Windows XP
Firefox 2.0.0.6
Répondre à BarbeRousse  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Papou93, le lundi 10 septembre 2007 à 08:51:08
Bonjour barberousse

Voici une solution qui me parait simple :

Il te faut créer un nouveau module dans VBA (Menu 'Insertion -> Module'), puis tu tapes le code suivant :

Sub ChgCouleur()
If Sheets("machin").Range("b5").Value = 65 And Sheets("chose").Range("f6") = 48 Then
Sheets("truc").Range("a1").Interior.Colo­rIndex = 6
Else
Sheets("truc").Range("a1").Interior.Colo­rIndex = 0
End If
End Sub


Ensuite, dans les événements 'Change' de tes feuilles "machin" et "chose", tu tapes l'appel à cette procésure :

Private Sub Worksheet_Change(ByVal Target As Range)
ChgCouleur
End Sub


Explication :

A chaque changement de valeur dans l'une des 2 feuilles, la procédure ChgCouleur est exécutée.
Cette procédure lit la valeur de la cellule "b5" de la feuille "machin" et de la cellule "f6" de la feuille "chose".
Si les valeurs trouvées sont respectivement 65 ET 48, le programme change alors la couleur de fond de la cellule "a1" de la feuille "truc" (6=jaune). Dans le cas contraire, elle remet la couleur par défaut (0=aucune).
Tu peux tester les différentes couleurs possibles en modifiant la valeur '6').

Espérant t'avoir aidé.

Cordialement.
Répondre à Papou93

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
BarbeRousse, le lundi 10 septembre 2007 à 14:07:27
merci je viens d'essayer, j'ai bien réussi à faire le module VBA, mais je ne comprends pas comment aller dans les événements de "machin" et "chose".

Ceci dit ça à l'aire de fonctionner quand je teste le script, mais comment je peut définir la couleur ?
Répondre à BarbeRousse

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
 Papou93, le lundi 10 septembre 2007 à 22:44:18
Il te suffit, dans l'éditeur VBA, module 'Microsoft Excel Objects', de cliquer sur les feuilles voulues puis choisir 'WorkSheet' dans la liste déroulante en haut à gauche et 'Change' dans la liste déroulante de droite.
Pour définir les couleurs, procèdes par essais en remplaçant le 6 ('Interior.colorindex=6') par un autre chiffre (=57 maxi).

Cordialement.
Répondre à Papou93
Logiciels pertinents trouvés dans les téléchargements
Télécharger FastNote 2.4.0FastNote - FastNote permet d'avoir des Post-It électroniques sur votre bureau. C'est très simple: Quel que soit le logiciel dans...Catégorie: Organisation
Licence: Freeware/gratuit
Télécharger Ant Renamer 2.10.0Ant Renamer - ANT Renamer permet de renommer un grand nombre de fichiers et dossiers en quelques clics. Il ne fait que modifier les noms...Catégorie: Gestion de fichiers
Licence: Freeware/gratuit
Télécharger Renamer4Mac 2.8Renamer4Mac - Renamer4Mac permet de renommer facilement un grand nombre de fichiers. Par un simple glisser/déposer des fichiers sur...Catégorie: Gestion de fichiers
Licence: Freeware/gratuit
Télécharger Casc'ADSL 0.99 build 4209Casc'ADSL - Casc'ADSL est un outil destiné aux Internautes se connectant via le service d'accès distant et désireux de maintenir leur...Catégorie: ADSL
Licence: Freeware/gratuit
Plus de logiciels gratuits sur « [VBA] Changer la couleur d'une case »