Di seguito vedremo un programma in Excel VBA che evidenzia la riga e la colonna della cella attiva (cella selezionata). Questo programma sarà stupire e impressionare il vostro capo.

Situazione:

Highlight Active Cell in Excel VBA

Ogni volta che cambia la cella attiva di Sheet1, una macro deve essere eseguito. È possibile raggiungere questo obiettivo la creazione di un Evento SelectionChange foglio di lavoro.

  1. Aprire il Visual Basic Editor.

  2. Fare doppio clic su Sheet1 (Foglio1) in Esplora progetti.

  3. Scegliere foglio di lavoro dall’elenco a discesa sinistra. Scegli SelectionChange dall’elenco a discesa a destra.

Worksheet SelectionChange Event in Excel VBA

Aggiungere le seguenti righe di codice al foglio di lavoro SelectionChange evento:

  1. Dichiariamo quattro variabili di tipo Integer. Un nome rowNumberValue, uno di nome columnNumberValue, uno chiamato i e uno di nome j.

Dim rowNumberValue As Integer, columnNumberValue As Integer, i As Integer, j As Integer
  1. In primo luogo, si aggiunge la linea che cambia il colore di tutte le cellule sfondo a ‘Nessun riempimento’.

Cells.Interior.ColorIndex = 0
  1. inizializzare la rowNumberValue variabile con il numero di riga della cella attiva e la columnNumberValue variabile con il numero di colonna della cella attiva.

rowNumberValue = ActiveCell.row

columnNumberValue = ActiveCell.column
  1. Evidenziamo l’azzurro colonna. Cioè: tutte le celle con numero di riga minore o uguale al numero di colonna rowNumberValue e uguale a columnNumberValue

For i = 1 To rowNumberValue

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

Next i

Spiegazione: per questo esempio (vedi foto sopra), rowNumberValue uguale a 12 e columnNumberValue è uguale a 8. Le righe di codice tra For e Next verrà eseguito dodici volte. Per i = 1, colori Excel VBA la cella all’intersezione della riga 1 e colonna 8. per i = 2, colori Excel VBA cella all’intersezione della riga 2 e colonna 8, ecc

Nota: invece di ColorIndex numero 37 (blu), è possibile utilizzare qualsiasi numero di ColorIndex.

  1. In modo simile, si segnalano i blu fila. Cioè: tutte le celle con numero di riga pari alla rowNumberValue e numero di colonna minore o uguale a columnNumberValue.

For j = 1 To columnNumberValue

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

Next j
  1. Ora è il momento di testare il programma. Scarica il file di Excel e vedere come la riga e colonna della cella attiva sono evidenziati ogni volta che si cambia la cella attiva.