Inhoudsopgave
In deze handleiding behandelen we verschillende manieren om een macro in Excel uit te voeren - via het lint en de VB-editor, met een aangepaste sneltoets en door zelf een macroknop te maken.
Hoewel het uitvoeren van een Excel-macro eenvoudig is voor ervaren gebruikers, is het voor beginners misschien niet meteen duidelijk. In dit artikel leert u verschillende methoden om macro's uit te voeren, waarvan sommige uw manier van omgaan met Excel-werkmappen volledig kunnen veranderen.
Hoe een macro uitvoeren vanuit het Excel-lint
Een van de snelste manieren om VBA in Excel uit te voeren is het uitvoeren van een macro vanuit het Ontwikkelaar Als u nog nooit met VBA-code hebt gewerkt, moet u misschien eerst het tabblad Ontwikkelaar activeren. En doe dan het volgende:
- Op de Ontwikkelaar tabblad, in de Code groep, klik Macro's Of druk op de sneltoets Alt + F8.
- Selecteer in het dialoogvenster dat verschijnt de gewenste macro en klik vervolgens op Ren .
Tip. Indien het tabblad Ontwikkelaar niet is toegevoegd aan uw Excel-lint, drukt u op Alt + F8 om het tabblad Macro dialoog.
Een macro uitvoeren met een aangepaste sneltoets
Als u een bepaalde macro regelmatig uitvoert, kunt u er een sneltoets aan toewijzen. Een sneltoets kan worden toegevoegd tijdens het opnemen van een nieuwe macro en aan een bestaande. Voer daarvoor de volgende stappen uit:
- Op de Ontwikkelaar tabblad, in de Code groep, klik Macro's .
- In de Macro dialoogvenster, klik op Opties .
- De Macro-opties dialoogvenster verschijnt. In het Snelkoppeling toetsvak, typ een hoofdletter of kleine letter die u wilt gebruiken voor de snelkoppeling, en klik op OK om de wijzigingen op te slaan.
- Voor kleine letters is de sneltoets Ctrl + letter .
- Voor hoofdletters is de sneltoets Ctrl + Shift + letter .
- Sluit de Macro dialoogvenster.
Tip. Het wordt aanbevolen om altijd Hoofdletters toetscombinaties voor macro's ( Ctrl + Shift + letter ) niet de standaard Excel sneltoetsen overschrijven. Als u bijvoorbeeld Ctrl + f aan een macro toewijst, verliest u de mogelijkheid om de Zoeken en vervangen dialoog.
Zodra de snelkoppeling is toegewezen, drukt u gewoon op die toetscombinatie om uw macro uit te voeren.
Macro uitvoeren vanuit VBA-editor
Als je een Excel-prof wilt worden, dan moet je zeker weten hoe je een macro start, niet alleen vanuit Excel, maar ook vanuit de Visual Basic Editor. Het goede nieuws is dat het veel gemakkelijker is dan je zou verwachten :)
- Druk op Alt + F11 om de Visual Basic Editor te starten.
- In de Projectverkenner venster links, dubbelklik op de module met uw macro om deze te openen.
- In de Code In het rechter venster ziet u alle macro's in de module. Plaats de cursor ergens in de macro die u wilt uitvoeren en doe een van de volgende dingen:
- Klik in de menubalk op Ren > Sub/UserForm uitvoeren .
- Klik in de werkbalk op de Macro uitvoeren knop (groene driehoek).
U kunt ook een van de volgende snelkoppelingen gebruiken:
- Druk op F5 om de hele code uit te voeren.
- Druk op F8 om elke coderegel apart uit te voeren. Dit is erg handig bij het testen en debuggen van macro's.
Tip. Als u Excel graag via het toetsenbord bedient, kan deze handleiding handig zijn: 30 handigste Excel sneltoetsen.
Hoe maak je een macroknop in Excel?
De traditionele manieren om macro's uit te voeren zijn niet moeilijk, maar kunnen toch een probleem vormen als u een werkmap deelt met iemand die geen ervaring heeft met VBA - die weet gewoon niet waar hij moet zoeken! Om het uitvoeren van een macro echt gemakkelijk en intuïtief te maken voor iedereen, maakt u uw eigen macroknop.
- Op de Ontwikkelaar tabblad, in de Controles groep, klik Plaats en selecteer Knop onder Van Controls .
- Klik ergens in het werkblad. Dit opent de Macro toewijzen dialoogvenster.
- Selecteer de macro die u aan de knop wilt toewijzen en klik op OK .
- Een knop wordt ingevoegd in het werkblad. Om de tekst van de knop te wijzigen, klikt u met de rechtermuisknop op de knop en selecteert u Bewerk tekst uit het contextmenu.
- Verwijder de standaardtekst zoals Knop 1 en typ je eigen tekst. Optioneel kun je de tekst vet of cursief maken.
- Als de tekst niet in de knop past, maak de knopbesturing dan groter of kleiner door de groottehendels te verslepen. Als u klaar bent, klikt u ergens op het blad om de bewerkingsmodus af te sluiten.
En nu kunt u de macro uitvoeren door op de knop ervan te klikken. De macro die we hebben toegewezen, formatteert de geselecteerde cellen zoals in de onderstaande schermafbeelding:
Tip. U kunt ook een macro toewijzen aan een bestaande knop of andere formulierbesturingselementen zoals draaiknoppen of schuifbalken. Klik hiervoor met de rechtermuisknop op het besturingselement dat in uw werkblad is ingevoegd en kies Macro toewijzen uit het pop-up menu.
Een macroknop maken van een grafisch object
Helaas is het niet mogelijk om het uiterlijk van knopbesturingselementen aan te passen, waardoor de knop die we zojuist hebben gemaakt er niet erg mooi uitziet. Om een echt mooie Excel macroknop te maken, kunt u vormen, pictogrammen, afbeeldingen, WordArt en andere objecten gebruiken.
Als voorbeeld laat ik zien hoe je een macro kunt uitvoeren door op een vorm te klikken:
- Op de Plaats tabblad, in de Illustraties groep, klik Vormen en selecteer het gewenste vormtype, bijv. rechthoek met afgeronde hoeken:
- Klik in uw werkblad op de plaats waar u het vormobject wilt invoegen.
- Formatteer je vorm-knop zoals je wilt. Je kunt bijvoorbeeld de kleuren van de vulling en omlijning veranderen of een van de voorgedefinieerde stijlen op de Vorm Formaat Om tekst aan de vorm toe te voegen, dubbelklik je erop en begin je te typen.
- Om een macro aan de vorm te koppelen, klikt u met de rechtermuisknop op het vormobject, kiest u Macro toewijzen.., selecteer dan de gewenste macro en klik op OK .
Nu heb je een vorm die lijkt op een knop en die de toegewezen macro uitvoert telkens als je erop klikt:
Een macroknop toevoegen aan de werkbalk Snelle toegang
De macroknop ingevoegd in een werkblad ziet er goed uit, maar een knop toevoegen aan elk blad is tijdrovend. Om uw favoriete macro overal toegankelijk te maken, voegt u hem toe aan de werkbalk Snelle toegang. Zo gaat u te werk:
- Klik met de rechtermuisknop op de werkbalk Snelle toegang en kies Meer commando's... uit het contextmenu.
- In de Kies commando's uit lijst, selecteer Macro's .
- Kies in de lijst van macro's de macro die u aan de knop wilt toewijzen en klik op Toevoegen Hierdoor wordt de geselecteerde macro verplaatst naar de lijst met knoppen op de werkbalk Snelle toegang aan de rechterkant.
Op dit punt kunt u op OK klikken om de wijzigingen op te slaan of nog een paar aanpassingen doen die hieronder worden beschreven.
- Als u vindt dat het door Microsoft toegevoegde pictogram niet geschikt is voor uw macro, klikt u op Wijzig om het standaardpictogram te vervangen door een ander.
- In de Wijzig knop dialoogvenster dat verschijnt, selecteert u een pictogram voor uw macroknop. Optioneel kunt u ook de Naam weergeven In tegenstelling tot de macronaam kan de knopnaam spaties bevatten.
- Klik tweemaal op OK om beide dialoogvensters te sluiten.
Klaar! Nu heb je je eigen Excel-knop om een macro uit te voeren:
Hoe zet je een macroknop op het Excel-lint
Indien u een paar veelgebruikte macro's in uw Excel-toolbox hebt, kan het handig zijn om een aangepaste lintgroep te hebben, bijvoorbeeld Mijn macro's en voeg alle populaire macro's aan die groep toe als knoppen.
Voeg eerst een aangepaste groep toe aan een bestaand tabblad of uw eigen tabblad. Zie voor de gedetailleerde instructies:
- Een aangepast linttabblad maken
- Een aangepaste groep toevoegen
En voeg vervolgens een macroknop toe aan uw aangepaste groep door deze stappen uit te voeren:
- Klik met de rechtermuisknop op het lint en klik vervolgens op Het lint aanpassen .
- Doe het volgende in het dialoogvenster dat verschijnt:
- Selecteer in de lijst tabs aan de rechterkant uw aangepaste groep.
- In de Kies commando's uit lijst aan de linkerkant, selecteer Macro's .
- Kies in de lijst van macro's de macro die u aan de groep wilt toevoegen.
- Klik op de Toevoegen knop.
Voor dit voorbeeld heb ik een nieuw tabblad gemaakt met de naam Macro's en een aangepaste groep met de naam Macro's opmaken In het onderstaande screenshot voegen we de Format_Headers macro naar die groep.
- De macro is nu toegevoegd aan de aangepaste lintgroep. Om uw macroknop een vriendelijkere naam te geven, selecteert u hem en klikt u op Hernoemen :
- In de Hernoemen dialoogvenster, typ een willekeurige naam in de Naam weergeven vak (spaties zijn toegestaan in knopnamen) en kies een pictogram voor uw macroknop. Als u klaar bent, klikt u op OK.
- Klik op OK om uw wijzigingen op te slaan en het hoofddialoogvenster te sluiten.
Als voorbeeld: ik heb drie macroknoppen op mijn Excel-lint gezet en kan ze nu allemaal uitvoeren met een klik op de knop:
Hoe een macro uitvoeren bij het openen van een werkmap
Soms wilt u bij het openen van een werkmap automatisch een macro uitvoeren, bijvoorbeeld om een bericht weer te geven, een script uit te voeren of een bepaald bereik te wissen. Dit kan op twee manieren.
Macro automatisch uitvoeren door gebruik te maken van de gebeurtenis Workbook_Open
Hieronder vindt u de stappen om een macro te maken die automatisch wordt uitgevoerd telkens wanneer u een specifieke werkmap opent:
- Open de werkmap waarin u de macro wilt uitvoeren.
- Druk op Alt + F11 om de Visual Basic Editor te openen.
- Dubbelklik in de Project Explorer op DitWerkboek om zijn Code-venster te openen.
- In de Object lijst boven het venster Code, selecteer Werkboek Dit creëert een lege procedure voor de Open gebeurtenis waaraan u uw eigen code kunt toevoegen zoals in de onderstaande schermafbeelding.
De volgende code toont bijvoorbeeld een welkomstbericht telkens wanneer de werkmap wordt geopend:
Private Sub Werkboek_Openen() MsgBox "Welkom bij het maandrapport!" End SubMacro activeren bij openen werkmap met Auto_Open gebeurtenis
Een andere manier om automatisch een macro uit te voeren bij het openen van een werkmap is door gebruik te maken van de Auto_Open gebeurtenis. In tegenstelling tot de Workbook_Open gebeurtenis, moet Auto_Open() in een standaard code module zitten, niet in DitWerkboek .
Hier volgen de stappen om zo'n macro te maken:
- In de Projectverkenner rechtsklik Modules en klik dan op Plaats > Module .
- In de Code venster, schrijf de volgende code:
Hier is een voorbeeld van de echte code die een berichtvenster weergeeft bij het openen van de werkmap:
Sub Auto_Open() MsgBox "Welcome to Monthly Report!" End SubLet op! De Auto_Openen event is verouderd en beschikbaar voor achterwaartse compatibiliteit. In de meeste gevallen kan het worden vervangen door de Werkboek_Openen Voor meer informatie, zie Werkboek_Openen vs. Auto_Openen.
Welke gebeurtenis u ook gebruikt, uw macro wordt automatisch uitgevoerd telkens wanneer u het Excel-bestand opent dat de code bevat. In ons geval verschijnt het volgende berichtvenster:
Nu je veel manieren kent om een macro in Excel uit te voeren, hoef je alleen nog maar de meest geschikte te kiezen. Ik dank je voor het lezen en hoop je volgende week op onze blog te zien!