Markeer actieve cel in Excel VBA - Eenvoudige Excel-macro's

Inhoudsopgave

Hieronder zullen we kijken naar een programma in Excel VBA Dat markeert de rij en kolom van de actieve cel (geselecteerde cel). Dit programma zal je baas verbazen en imponeren.

Situatie:

Elke keer dat we de actieve cel op blad1 wijzigen, moet er een macro worden uitgevoerd. U kunt dit bereiken door een Worksheet SelectionChange-gebeurtenis te maken.

1. Open de Visual Basic-editor.

2. Dubbelklik op Blad1 (Blad1) in de Projectverkenner.

3. Kies Werkblad in de linker vervolgkeuzelijst. Kies SelectieWijzigen in de rechter vervolgkeuzelijst.

Voeg de volgende coderegels toe aan de Worksheet SelectionChange-gebeurtenis:

4. We declareren vier variabelen van het type Integer. Een met de naam rowNumberValue, een met de naam columnNumberValue, een met de naam i en een met de naam j.

Dim rowNumberWaarde als geheel getal, columnNumberWaarde als geheel getal, i als geheel getal, j als geheel getal

5. Eerst voegen we de regel toe die de achtergrondkleur van alle cellen verandert in 'No Fill'.

Cellen.Interior.ColorIndex = 0

6. We initialiseren de variabele rowNumberValue met het rijnummer van de Active Cell en de variabele columnNumberValue met het kolomnummer van de Active Cell.

rowNumberValue = ActiveCell.row
columnNumberValue = ActiveCell.column

7. We markeren de kolom blauw. Dat wil zeggen: alle cellen met rijnummer kleiner of gelijk aan rowNumberValue en kolomnummer gelijk aan columnNumberValue

Voor i = 1 Naar rijNummerWaarde
Cellen (i, columnNumberValue).Interior.ColorIndex = 37
volgende i

Uitleg: voor dit voorbeeld (zie afbeelding hierboven) is rowNumberValue gelijk aan 12 en columnNumberValue is gelijk aan 8. De coderegels tussen For en Next worden twaalf keer uitgevoerd. Voor i = 1 kleurt Excel VBA de cel op het snijpunt van rij 1 en kolom 8. Voor i = 2 kleurt Excel VBA de cel op het snijpunt van rij 2 en kolom 8, enz.

Let op: in plaats van ColorIndex nummer 37 (blauw), kunt u elk ColorIndex nummer gebruiken.

8. Op dezelfde manier markeren we de rij blauw. Dat wil zeggen: alle cellen met rijnummer gelijk aan rowNumberValue en kolomnummer kleiner of gelijk aan columnNumberValue.

Voor j = 1 Naar columnNumberValue
Cellen (rowNumberValue, j).Interior.ColorIndex = 37
volgende j

9. Nu is het tijd om het programma te testen. Download het Excel-bestand en zie hoe de rij en kolom van de actieve cel worden gemarkeerd telkens wanneer u de actieve cel wijzigt.

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave