En VBA Excel, les couleurs peuvent être choisies dans un panel de 56 couleurs prédéfinies ou créées en mélangeant une certaine quantité des trois couleurs primaires : rouge, vert et bleu.
Utilisation des couleurs prédéfinies
Les 56 couleurs de base sont représentées dans cette copie d’écran :
Pour affecter une de ces couleurs au texte ou à l’arrière-plan de la sélection ou de la cellule active, vous utiliserez ces expressions :
Range("A10").Select 'Sélection de la cellule A10 Selection.Interior.ColorIndex = 4 'Arrière-plan de couleur 4 Selection.Font.ColorIndex = 26 'Police de couleur 26 Range("A12").Activate 'Activation de la cellule A12 ActiveCell.Interior.ColorIndex = 4 'Arrière-plan de couleur 4 ActiveCell.Font.ColorIndex = 26 'Police de couleur 26
Utilisation des couleurs RGB
La couleur du texte ou de l’arrière-plan peut être définie avec la fonction RGB() :
RGB(rouge, vert, bleu)
Où rouge, vert et bleu sont la quantité de rouge de vert et de bleu qui constituent la couleur. Ces trois valeurs doivent être comprises entre 0 et 255. La valeur 0 signifie que la couleur est absente. La valeur 255 signifie que la couleur est maximale.
Etant donné que chacune de ces composantes peut prendre 256 valeurs, la fonction RGB() donne accès à 256*256*256 couleurs, soit 16 777 216 couleurs !
Voici quelques exemples :
Valeur | Couleur |
RGB(0,0,0) | Noir |
RGB(255,255,255) | Blanc |
RGB(255,0,0) | Rouge |
RGB(0,255,0) | Vert |
RGB(0,0,255) | Bleu |
Comment feriez-vous pour définir un gris ?
Pour cela, vous devez prendre la même quantité pour chaque couleur primaire.
Vous pourrez ainsi définir 256 niveaux de gris, depuis le gris très foncé (noir) défini par RGB(0,0,0) au gris très clair (blanc) défini par RGB(255,255,255). Vous définirez par exemple un gris foncé avec RGB(50,50,50) et un gris clair avec RGB(200,200,200).
Pour affecter une couleur de texte ou d’arrière-plan à la sélection ou à la cellule active, vous utiliserez des instructions de ce type :
Range("A10").Select 'Sélection de la cellule A10 Selection.Interior.Color = RGB(255,0,0) 'Arrière-plan de couleur rouge Selection.Font.Color = RGB(0,255,0) 'Police de couleur verte Range("A12").Activate 'Activation de la cellule A12 ActiveCell.Interior.Color = RGB(255,0,0) 'Arrière-plan de couleur rouge ActiveCell.Font.Color = RGB(0,255,0) 'Police de couleur verte