Fremhev Active Cell i Excel VBA
Nedenfor ser vi på et program i Excel VBA at fremhever rad og kolonne i den aktive cellen (valgt celle). Dette programmet vil forbløffe og imponere sjefen din.
Situasjon:
Hver gang vi endrer Active Cell på Sheet1, må en makro utføres. Du kan oppnå dette ved å opprette en Worksheet SelectionChange Event.
1. Åpne Visual Basic Editor.
2. Dobbeltklikk på Sheet1 (Sheet1) i Project Explorer.
3. Velg regneark fra den nedtrekkbare listen. Velg Utvalgskjør fra den høyre rullegardinlisten.
Legg til følgende kodelinjer i ArbeidsarkvalgVarianthendelse:
4. Vi erklærer fire variabler av typen Integer. En navngitt rowNumberValue, en navngitt columnNumberValue, en som heter jeg og en som heter j.
5. Først legger vi til linjen som endrer bakgrunnsfargen på alle cellene til "No Fill".
6. Vi initialiserer variabelen rowNumberValue med radnummeret til den aktive cellen og variabelen columnNumberValue med kolonnnummeret til den aktive cellen.
columnNumberValue = ActiveCell.column
7. Vi markerer kolonnen blå. Det er: alle cellene med radnummer mindre eller lik rowNumberValue og kolonnenummer som er lik kolonneNummerValue
Cells(i, columnNumberValue).Interior.ColorIndex = 37
Next i
Forklaring: for dette eksempelet (se bildet over) er rowNumberValue 12 og columnNumberValue tilsvarer 8. Kodelinjene mellom For og Next vil bli utført tolv ganger. For i = 1, farger Excel VBA cellen ved krysset mellom rad 1 og kolonne 8. For i = 2, farger Excel VBA cellen ved krysset mellom rad 2 og kolonne 8, etc.
Merk: i stedet for ColorIndex nummer 37 (blå), kan du bruke et hvilket som helst ColorIndex-nummer.
8. På samme måte markerer vi raden blå. Det er: alle cellene med radnummer lik rowNumberValue og kolonnenummer som er mindre eller lik kolonneNummerValue.
Cells(rowNumberValue, j).Interior.ColorIndex = 37
Next j
9. Nå er det på tide å teste programmet. Last ned Excel-filen og se hvordan raden og kolonnen til den aktive cellen er uthevet hver gang du endrer den aktive cellen.