Ci-dessous, nous examinerons un programme dans Excel VBA qui met en valeur la ligne et la colonne de la cellule active (cellule sélectionnée). Ce programme va étonner et impressionner votre patron.

Situation:

Highlight Active Cell in Excel VBA

Chaque fois que nous changeons la cellule active sur Sheet1, a besoin de macro à exécuter. Vous pouvez y parvenir en créant une feuille de calcul SelectionChange événement.

  1. Ouvrez le Visual Basic Editor.

  2. Double-cliquez sur Sheet1 (Sheet1) dans le projet Explorer.

  3. Choisissez la feuille de travail dans la liste déroulante de gauche. Choisissez SelectionChange de la droite liste déroulante.

Worksheet SelectionChange Event in Excel VBA

Ajoutez les lignes de code suivantes à la feuille SelectionChange événement:

  1. Nous déclarons quatre variables de type entier. Un nommé rowNumberValue, un nommé columnNumberValue, un i nommé et un nommé j.

Dim rowNumberValue As Integer, columnNumberValue As Integer, i As Integer, j As Integer
  1. Tout d’abord, nous ajoutons la ligne qui passe à « Aucun remplissage » la couleur d’arrière-plan de toutes les cellules.

Cells.Interior.ColorIndex = 0
  1. Nous initialisons la rowNumberValue variable avec le numéro de ligne de la cellule active et la columnNumberValue variable avec le numéro de colonne de la cellule active.

rowNumberValue = ActiveCell.row

columnNumberValue = ActiveCell.column
  1. Nous mettons en évidence le bleu de la colonne. C’est: toutes les cellules avec le numéro de la ligne inférieure ou égale à rowNumberValue et le numéro de colonne égale à columnNumberValue

For i = 1 To rowNumberValue

Cells(i, columnNumberValue).Interior.ColorIndex = 37

Next i

Explication: pour cet exemple (voir image ci-dessus), rowNumberValue est égal à 12 et columnNumberValue est égal à 8. Les lignes de code entre pour et suivant sera exécuté douze fois. Pour i = 1, les couleurs Excel VBA la cellule à l’intersection de la ligne 1 et de la colonne 8. Pour i = 2, les couleurs Excel VBA la cellule à l’intersection de la ligne 2 et de la colonne 8, etc.

Note: au lieu du numéro 37 ColorIndex (bleu), vous pouvez utiliser un nombre ColorIndex.

  1. De la même manière, nous mettre en évidence le bleu de la ligne. C’est: toutes les cellules avec le numéro de ligne égale à rowNumberValue et le numéro de colonne inférieure ou égale à columnNumberValue.

For j = 1 To columnNumberValue

Cells(rowNumberValue, j).Interior.ColorIndex = 37

Next j
  1. Maintenant, il est temps de tester le programme. Télécharger le fichier Excel et voir comment la ligne et la colonne de la cellule active sont mises en évidence chaque fois que vous changez la cellule active.