Excel · VBA · A3iformations

Propriétés des cellules en VBA : Value, Text, Formula, mises en forme, Color et ColorIndex

Une cellule est un objet Range dont les propriétés décrivent le contenu (Value, Text, Formula) et l’apparence (Font, Interior, Borders, NumberFormat). On les lit pour connaître l’état de la cellule, on les affecte pour la modifier. Cette page montre ce que renvoie chaque propriété de valeur, comment appliquer les mises en forme courantes et comment choisir une couleur avec Color ou ColorIndex. Voir aussi les variables et l’objet Range.

Value, Value2, TextLire
Formula, FormulaLocalÉcrire
Font, Borders, NumberFormatMettre en forme
RGB, 56 couleursColorer
1

La valeur d’une cellule

Value est la propriété par défaut : Range("B2") seul équivaut à Range("B2").Value. Elle renvoie la valeur typée (une Date pour une date, un Currency pour une cellule au format monétaire). Value2 renvoie la valeur brute, sans ces conversions : une date devient son numéro de série. Text renvoie exactement ce qui est affiché, format compris, y compris #### si la colonne est trop étroite. Formula renvoie la formule en anglais, FormulaLocal en français, FormulaR1C1 en références relatives.

Simulateur : cliquez sur une cellule pour lire ses propriétés

Value2 pour aller viteSur de grandes plages, Value2 est un peu plus rapide que Value : pas de conversion en Date ni en Currency. Idéal pour charger une plage dans un tableau.
Text n’est pas une valeurNe calculez jamais avec .Text : c’est du texte mis en forme (« 1 234,50 € »), qui change avec le format et la largeur de colonne.
2

Écrire une valeur ou une formule

Pour écrire, on affecte la propriété : Range("F2").Value = 100. Une chaîne qui commence par = est interprétée comme une formule, en anglais et avec le point décimal : Range("F2").Formula = "=SUM(D2:D9)". Pour écrire la formule en français, utilisez FormulaLocal. ClearContents efface le contenu en gardant la mise en forme ; Clear efface tout.

Simulateur : quelle instruction écrit quoi en F2 ?

    
F2

Point ou virgule ?Formula attend =B2*1.2 (point, fonctions anglaises, virgule entre arguments). FormulaLocal attend =B2*1,2 et =SOMME(B2;C2).
Toute une plage d’un coupRange("F2:F9").Formula = "=D2*1.2" écrit la formule sur 8 lignes en ajustant les références, comme une recopie.
3

Mises en forme diverses

La police se règle par l’objet Font (.Bold, .Italic, .Underline, .Size, .Name, .Color), le fond par Interior, les bordures par Borders ou BorderAround, l’alignement par HorizontalAlignment, le format des nombres par NumberFormat (codes en anglais) ou NumberFormatLocal. With … End With regroupe les réglages ; l’enregistreur de macros reste le meilleur moyen de découvrir le nom d’une propriété.

Simulateur : mettez en forme l’en-tête et les montants
En-tête A1:D1
Tableau A1:D4

    

Effacer les formatsRange("A1:D4").ClearFormats retire toutes les mises en forme sans toucher aux valeurs.
StylesRange("A1:D1").Style = "Titre 1" applique un style existant du classeur : une seule ligne, et une mise en forme cohérente partout.
4

Color et ColorIndex

Color accepte n’importe laquelle des 16 millions de couleurs, sous forme d’un nombre Long calculé par RGB(rouge, vert, bleu) : rouge + vert × 256 + bleu × 65 536. Les constantes vbRed, vbBlue, vbYellow en sont des raccourcis. ColorIndex choisit l’une des 56 couleurs de la palette du classeur (1 = noir, 2 = blanc, 3 = rouge…) : pratique et court, mais limité. Interior.ColorIndex = xlNone supprime le fond. En lecture, ColorIndex renvoie la couleur de la palette la plus proche.

Simulateur : composez une couleur ou choisissez dans la palette

    

RGB n’est pas l’ordre hexadécimalEn HTML, #1F4E78 se lit rouge-vert-bleu, mais le nombre Long de VBA est stocké à l’envers (bleu-vert-rouge) : &H784E1F. Passez toujours par RGB().
Retrouver les composantesr = c Mod 256, g = (c \ 256) Mod 256, b = c \ 65536 décomposent la couleur lue dans .Interior.Color.
Exercice : mettre en forme un tableau de ventes par macro

Classeur d’exercice (Énoncé et Corrigé)

  1. Enregistrez le classeur en .xlsm et collez le code de la feuille « Code VBA » dans un module standard.
  2. Exécutez LireValeurs : la fenêtre d’exécution affiche Value, Value2, Text et Formula des cellules B2 et F2. Comparez.
  3. Exécutez MettreEnForme : en-tête blanc sur bleu, bordures, formats de date et de montant, lignes de plus de 1 000 € en vert, avoir en rouge.
  4. Exécutez LireCouleur : les composantes de la couleur de A1 s’affichent (31, 78, 120).
  5. Contrôle : 4 lignes vertes, total 8 645,00 €, avoir en rouge (ColorIndex 3).
  6. Répondez aux questions de la feuille Contrôle.
A3iformations · Organisme certifié Qualiopi · Centre de passage TOSA Interface Excel Microsoft 365 en français