Cellule de surbrillance VBA

Ce didacticiel montrera comment utiliser VBA pour mettre en évidence une cellule ou une plage de cellules.

La mise en forme conditionnelle est un moyen de mettre en évidence des cellules dans Excel. Nous pouvons également utiliser VBA pour effectuer la mise en évidence des cellules.

Mettre une cellule en surbrillance

Pour mettre en évidence une cellule dans VBA, nous pouvons utiliser la procédure simple comme indiqué ci-dessous.

123 Sous HighlightCell()ActiveCell.Interior.Color = vbRedFin du sous-marin

Mettre en surbrillance une plage de cellules

De même, nous pouvons sélectionner une plage de cellules et mettre en surbrillance toutes les cellules de la plage.

1234 Sub HighlightRange()Plage ("A1:A10").SélectionnezSelection.Interior.Color = vbRedFin du sous-marin

Mettez en surbrillance les cellules en fonction de la valeur de la cellule

Pour ajouter une condition de mise en évidence d'une cellule, nous pouvons utiliser une instruction IF pour mettre en évidence la cellule si la valeur de la cellule est supérieure à une certaine valeur, dans ce cas supérieure à 10.

12345 Sous HighlightCell_1Si ActiveCell.Value > 10 alorsActiveCell.Interior.Color = vbRedFin siFin du sous-marin

Mettez en surbrillance une plage de cellules en fonction de la valeur de la cellule

Pour vérifier les valeurs dans une plage de cellules, nous aurions besoin de parcourir chaque cellule, d'établir sa valeur, puis de mettre la cellule en surbrillance en conséquence. Dans l'exemple ci-dessous, nous allons d'abord établir que la valeur contenue dans la plage est un nombre, puis tester pour voir si ce nombre est supérieur à 10.

12345678910 Sous HighlightRangeOfCells()Dim rng As RangePour chaque sonnerie dans la plage ("A1:A10")Si IsNumeric(rng.Value) ThenSi rng.Valeur > 10 Alorsrng.Interior.Color = vbRedFin siFin sisonnerie suivanteFin du sous-marin

Mettre en surbrillance une cellule avec une mise en forme conditionnelle

Nous pouvons également utiliser VBA pour appliquer une mise en forme conditionnelle à une cellule afin de la mettre en surbrillance. Dans l'exemple ci-dessous, la mise en forme conditionnelle sera appliquée à chaque cellule de la plage. Comme dans l'exemple ci-dessus, nous testons d'abord que la cellule contient une valeur numérique, puis appliquons la mise en forme conditionnelle.

12345678910 Sous-ensembleConditionalFormatting()Dim rng As RangePour chaque sonnerie dans la plage ("A1:A10")Si IsNumeric(rng.Value) Thenrng.FormatConditions.Add Type:=xlCellValue, Operator:=xlGreater, Formula1:="=10"rng.FormatConditions(1).Interior.Color = vbRedrng.FormatConditions(1).StopIfTrue = FalseFin sisonnerie suivanteFin du sous-marin

Mettez en surbrillance une cellule lorsque la sélection change

Nous pouvons rendre dynamique la mise en évidence d'une cellule lorsque le pointeur de cellule se déplace dans la feuille de calcul en cours en utilisant l'événement Worksheet_Change. Dans l'exemple ci-dessous, tous les surlignages de la feuille seront supprimés (sauf ceux effectués par mise en forme conditionnelle) et la cellule active sera surlignée en rouge (ColorIndex = 3).

1234 Private Sub Worksheet_SelectionChange (ByVal Target As Range)ActiveSheet.Cells.Interior.ColorIndex = xlColorIndexNoneTarget.Interior.ColorIndex = 3Fin du sous-marin
wave wave wave wave wave