Rij en kolom van de actieve cel markeren (VBA)

Geplaatst in Opmaak, VBA door Exhelp | Tags: , , , , ,
Van toepassing op: Excel 2003, Excel 2007, Excel 2010, Excel 2013

Wanneer je bezig bent met het analyseren of bekijken van grote bestanden met veel informatie, zou het dan niet gemakkelijker zijn indien de rij en kolom van de geselecteerde cel gemarkeerd werden?

Bereiken definiëren

Selecteer de cel waarin je de nummer van de geselecteerde rij wil weergeven (in ons geval is dit ‘C14’).

Ga naar ‘Formules’ >> ‘Naam bepalen’ en geef als naam ‘GesRij’ in.

Doe dit nu opnieuw voor de kolomnummer in cel ‘C15’ en kies als naam ‘GesKol’.

De VBA code opstellen

Druk op ‘Alt+F11’ en plaats onderstaande code in ‘Blad1 (Blad 1)’ in de VBA editor.

Private Sub Worksheet_SelectionChange(Byval Target As Range)

[GesRij] = Target.Row
[GesKol] = Target.Column

End Sub

Voorwaardelijke opmaak instellen

Selecteer het volledige bereik waarin de data zich bevindt (in ons geval A2:H12) en ga naar ‘Start’ >> ‘Voorwaardelijke opmaak’ >> ‘Nieuwe regel’.

Kies hier voor ‘Een formule gebruiken om te bepalen welke cellen worden opgemaakt’.

Vul volgende formule in:

=RIJ(A2)=GesRij

Maak dezelfde regel opnieuw, maar dan met volgende formule:

=KOLOM(A2)=GesKol

… en klaar!

 

7 reacties op “Rij en kolom van de actieve cel markeren (VBA)”

  • Complimenten, een prachtige oplossing. Echter, ik zou zo graag willen dat de cursor (naar keuze) altijd een gekleurde rij & kolom zou tonen. Ik meen dat dit standaard in Excel zou moeten kunnen, maar helaas… Is dat desondanks toch mogelijk?

    • Johan, bedankt voor je positieve commentaar! Voor zover ik dat kan beoordelen, is dat niet mogelijk. Toch zeker niet zonder enkele ongemakkelijke bijwerkingen. Moest je hier toch een oplossing voor vinden, dan hoor ik deze héél graag.

  • Fantastische code ook al staat deze al een tijdje online. Ik heb het nu in gebruik mits nog enkele kleine toevoegingen.

    Nu wat ik hier graag zou zien is het volgende: Ik heb verschillende bladen maar met dezelfde cellen, voor elke maand één. Dezelfde opmaakcode zou ik willen gebruiken op elk blad. Probleem is dat ik dan overal de code voor voorwaardelijke opmaak moet aanpassen, wat veel werk is. De gedefinieerde naam verwijst namelijk naar een vaste sheet.

    Kan je niet verwijzen naargelang de actieve sheet? Zo kan je voor alle bladen twee cellen vullen met de rij en kolom van de actieve sheet en moet niet alle opmaak worden aangepast.
    Zoiets als: =Feb!$D$32 > = ActiveSheet $D$32 maar dit werkt niet natuurlijk!

    Hopelijk is dit duidelijk, Bedankt voor eventuele oplossingen. Pol

    • Beste Pol,

      Afhankelijk van de exacte toepassing kan je dit wil oplossen.
      Ik denk dat je in jou geval best niet met benoemde bereiken werkt. OP deze manier wordt je namelijk meteen gebonden aan de bladnaam.

      Als je me een duidelijk voorbeeld bezorgt; wil ik wel eens kijken of ik zo meteen een manier kan bedenken.

      Groeten,
      Exhelp

      • Beste,

        Misschien wat laat maar ik heb de oplossing ondertussen gevonden.

        De vraagstelling was misschien niet helemaal duidelijk maar ik probeer hier de oplossing te geven.
        Je kan in Excel aan een cel of een bereik een Naam geven (Invoegen, Naam) Dit is gemakkelijk bij meermaals gebruik van deze cellen/bereiken in formules. Je maakt een Naam aan en deze cel of bereik worden benoemd, bv: formule =januari$A$10:$D$20 met als naam ‘groep’. Zo verwijst deze naam naar het bereik: A10 tot D20 in Blad ‘januari’.
        Indien ik nu bladen heb voor gans het jaar moet ik voor iedere maand een Naam maken. DIT wou ik net vermijden omdat het gaat over dezelfde cellen/bereik maar op verschillende bladen.

        De oplossing is simpel: in de formule van de naamgeving doe je ‘januari weg en vervangt het door een uitroepteken. Zo wordt de formule voor de Naam ‘groep’: =!$A$10:$D20.
        Je moet deze maar één keer aanmaken en je kan deze formule gebruiken in alle bladen.
        Een klein voorbeeld: bij een bepaalde actie wil je deze cellen rood kleuren, dit gebeurt nu op elk blad als het actief is.

        Groeten
        Pol

  • Hallo
    Ik heb alle stappen zoals beschreven uitgevoerd,
    Maar er gebeurt niets.
    Waar kan ik makkelijkst kijken wat ik fout doe, of is een voorbeeldbestand beschikbaar?

Plaats een reactie

U moet ingelogd zijn om te reageren.

Login

Forums

Exhelp

Meest recente berichten

TAGS



Creative Commons Licentie
Op dit werk is een Creative
Commons Licentie
van toepassing.