Als u een terugkerende taak wilt automatiseren, kunt u een macro opnemen met de macrorecorder in Microsoft Excel. Stel dat u allerlei datums hebt met willekeurige notaties en dat u deze allemaal met dezelfde notatie wilt weergeven. Een macro kan dat voor u doen. U kunt een macro opnemen waarmee de gewenste notatie wordt toegepast en de macro vervolgens afspelen als dat nodig is.
WindowsMacOS
Als u een macro opneemt, worden alle uitgevoerde stappen vastgelegd als Visual Basic for Applications (VBA)-code. Deze stappen kunnen bestaan uit het typen van tekst of getallen, het klikken op cellen of opdrachten op het lint of in menu's, het opmaken van cellen, rijen of kolommen, of zelfs het importeren van gegevens uit een externe bron, bijvoorbeeld Microsoft Access. VBA (Visual Basic Application) is een subset van de krachtige programmeertaal Visual Basic en is beschikbaar in de meeste Office-toepassingen. Hoewel u VBA kunt gebruiken voor het automatiseren van processen in en tussen Office-toepassingen, hoeft u geen ervaring te hebben met VBA-code of programmeren als de macrorecorder doet wat u wilt.
Het is belangrijk te weten dat tijdens het opnemen van een macro bijna elke handeling wordt vastgelegd door de macrorecorder. Als u een fout maakt in de reeks handelingen, u klikt bijvoorbeeld op de verkeerde knop, wordt dit ook opgenomen door de macrorecorder. U kunt dit oplossen door alle handelingen opnieuw op te nemen of door de VBA-code aan te passen. Het is dan ook raadzaam om alleen processen die u door en door kent, vast te leggen in een macro. Hoe soepeler het opnemen van een reeks handelingen verloopt, des te efficiënter de macro wordt uitgevoerd wanneer u deze afspeelt.
Macro's en VBA-hulpprogramma's vindt u op het tabblad Ontwikkelaars. Aangezien dit tabblad standaard is verborgen, moet u het eerst weergeven. Zie Het tabblad Ontwikkelaars weergeven voor meer informatie.
Een macro opnemen
Er zijn een paar dingen die handig zijn om te weten over macro's:
-
Als u een macro opneemt om een reeks taken uit te voeren in een bereik in Excel, wordt de macro alleen uitgevoerd op de cellen binnen het bereik. Dus als u later een extra rij toevoegt aan het bereik, wordt de macro niet uitgevoerd op de nieuwe rij, maar alleen op de cellen binnen het oorspronkelijke bereik.
-
Als u van plan bent om een lange reeks taken op te nemen, is het beter om de reeks op te delen in kleinere relevante macro's in plaats van één lange macro te gebruiken.
-
Het is niet zo dat alleen taken in Excel kunnen worden opgenomen in een macro. Het macroproces kan worden uitgebreid naar andere Office-toepassingen, maar ook naar andere toepassingen die ondersteuning bieden voor VBA (Visual Basic for Applications). U kunt bijvoorbeeld een macro opnemen waarin u eerst een tabel bijwerkt in Excel en vervolgens Outlook opent om de tabel naar een e-mailadres te versturen.
Volg deze stappen om een macro op te nemen.
-
Ga naar het tabblad Ontwikkelaars en klik in de groep Programmacode op Macro opnemen.
-OF-
Druk op Alt+T+M+R .
-
Typ in het vak Macronaam een naam voor de macro. Gebruik een naam die duidelijk beschrijft wat de functie van de macro is, zodat u deze snel kunt vinden als u meer dan één macro maakt.
Opmerking:Het eerste teken van de macronaam moet een letter zijn. Volgende tekens kunnen letters, cijfers of onderstrepingstekens zijn. Spaties kunnen niet worden gebruikt in een macronaam; een onderstrepingsteken werkt goed als woordscheidingsteken. Als u een macronaam gebruikt die ook een celverwijzing is, krijgt u mogelijk een foutbericht dat de macronaam ongeldig is.
-
Als u een sneltoets wilt toewijzen voor het uitvoeren van de macro, typt u de letter (hoofdletter of kleine letter) die u wilt gebruiken, in het vak Sneltoets. U kunt het beste een toetsencombinatie met Ctrl+Shift (hoofdletter) gebruiken, aangezien de macrosneltoets eventuele equivalente standaardsneltoetsen in Excel overschrijft zolang de werkmap met de macro is geopend. Als u bijvoorbeeld Ctrl+Z (Ongedaan maken) gebruikt, kunt u de sneltoets voor ongedaan maken niet meer gebruiken in dat exemplaar van Excel.
-
Selecteer in de lijst Macro opslaan in de locatie waarop u de macro wilt opslaan.
Over het algemeen slaat u de macro op de locatie Deze werkmap op, maar als een macro altijd beschikbaar moet zijn in Excel, selecteert u Persoonlijke macrowerkmap. Als u Persoonlijke macrowerkmap kiest, wordt er een verborgen macrowerkmap gemaakt (Personal.xlsb) als deze nog niet bestaat, waarna de macro in deze werkmap wordt opgeslagen.
-
Typ in het vak Beschrijving desgewenst een korte beschrijving van de macro.
Hoewel een beschrijving niet verplicht is, wordt het wel geadviseerd om beschrijvende tekst in te voeren. Bedenk een zinvolle beschrijving met alle informatie die nuttig kan zijn voor u of voor andere gebruikers die toegang hebben tot de macro. Als u veel macro's maakt, kunt u aan de hand van de beschrijving snel bepalen welke macro wat doet, anders moet u misschien lang zoeken.
-
Klik op OK om met de opname te beginnen.
-
Voer de bewerkingen uit die u wilt opnemen.
-
Klik op het tabblad Ontwikkelaars in de groep Code op Opname stoppen .
-OF-
Druk op Alt+T+M+R .
Werken met opgenomen macro's in Excel
Klik op het tabblad Ontwikkelaars op Macro's om de macro's te zien die aan een werkmap zijn gekoppeld. Dit kan trouwens ook met Alt+F8. Het dialoogvenster Macro wordt weergegeven.
Let op:Macro's kunnen niet ongedaan worden gemaakt. Voordat u een opgenomen macro voor de eerste keer uitvoert, moet u ervoor zorgen dat u de werkmap hebt opgeslagen waar u de macro wilt uitvoeren, of beter nog aan een kopie van de werkmap hebt gewerkt om ongewenste wijzigingen te voorkomen. Als u een macro uitvoert en deze niet doet wat u wilt, kunt u de werkmap sluiten zonder deze op te slaan.
Raadpleeg de onderstaande tabel voor meer informatie over het werken met macro's in Excel.
Taak | Beschrijving |
Beveiligingsinstellingen voor macro's wijzigen in Excel | Lees specifieke informatie over de beschikbare beveiligingsinstellingen voor macro's en hun betekenis. |
Een macro uitvoeren | Er zijn verschillende manieren om een macro uit te voeren, zoals met een sneltoets, een grafisch object, de werkbalk Snelle toegang, een knop of zelfs tijdens het openen van een werkmap. |
Een macro bewerken | Gebruik Visual Basic Editor om de macro's te bewerken die zijn gekoppeld aan een werkmap. |
Macromodules kopiëren naar een andere werkmap | Als een werkmap een VBA-macro bevat die u ergens anders wilt gebruiken, kunt u de module met de betreffende macro met behulp van Microsoft Visual Basic Editor naar een andere geopende werkmap kopiëren. |
Macro's aan objecten, vormen of afbeeldingen toewijzen |
|
Macro's aan knoppen toewijzen | U kunt een macro toewijzen aan een pictogram en het pictogram vervolgens toevoegen aan de werkbalk Snelle toegang of het lint. |
Een macro aan een besturingselement op een werkblad toewijzen | U kunt macro's toewijzen aan formulieren en ActiveX-besturingselementen in een werkblad. |
Macro's in Office-bestanden in- of uitschakelen | Lees hoe u macro's in Office-bestanden in- of uitschakelt. |
Visual Basic Editor openen | Druk op Alt+F11 |
Help-informatie opvragen over het gebruik van Visual Basic Editor | Lees hoe u Help-informatie kunt opvragen over Visual Basic-elementen. |
Werken met opgenomen code in Visual Basic Editor (VBE)
U kunt werken met opgenomen code in Visual Basic Editor (VBE) en uw eigen variabelen, besturingselementstructuren en andere code toevoegen die niet kan worden opgenomen met de macrorecorder. Aangezien de macrorecorder bijna elke stap vastlegt die u tijdens het opnemen uitvoert, kunt u ook opgenomen code wissen die overbodig is in de macro. Het bekijken van opgenomen code is een goede manier om te leren programmeren met VBA of om uw vaardigheden te verbeteren.
Zie het Engelstalige artikel Getting Started with VBA in Excel 2010 (Aan de slag met VBA in Excel 2010) voor meer informatie over het wijzigen van opgenomen code in een voorbeeld.
Een macro opnemen
Er zijn een paar dingen die handig zijn om te weten over macro's:
-
Als u een macro opneemt om een reeks taken uit te voeren in een bereik in Excel, wordt de macro alleen uitgevoerd op de cellen binnen het bereik. Dus als u later een extra rij toevoegt aan het bereik, wordt de macro niet uitgevoerd op de nieuwe rij, maar alleen op de cellen binnen het oorspronkelijke bereik.
-
Als u van plan bent om een lange reeks taken op te nemen, is het beter om de reeks op te delen in kleinere relevante macro's in plaats van één lange macro te gebruiken.
-
Het is niet zo dat alleen taken in Excel kunnen worden opgenomen in een macro. Het macroproces kan worden uitgebreid naar andere Office-toepassingen, maar ook naar andere toepassingen die ondersteuning bieden voor VBA (Visual Basic for Applications). U kunt bijvoorbeeld een macro opnemen waarin u eerst een tabel bijwerkt in Excel en vervolgens Outlook opent om de tabel naar een e-mailadres te versturen.
Macro's en VBA-hulpprogramma's vindt u op het tabblad Ontwikkelaars. Aangezien dit tabblad standaard is verborgen, moet u het eerst weergeven.
-
Ga naar Voorkeuren voor Excel > ... > lint & werkbalk.
-
Schakel in de categorie Lint aanpassen in de lijst Hoofdtabbladen het selectievakje Ontwikkelaars in. Klik vervolgens op Opslaan.
Voer deze stappen uit om een macro op te nemen.
-
Klik op het tabblad Ontwikkelaars op Macro opnemen.
-
Typ in het vak Macronaam een naam voor de macro. Gebruik een naam die duidelijk beschrijft wat de functie van de macro is, zodat u deze snel kunt vinden als u meer dan één macro maakt.
Opmerking:Het eerste teken van de macronaam moet een letter zijn. Volgende tekens kunnen letters, cijfers of onderstrepingstekens zijn. Spaties kunnen niet worden gebruikt in een macronaam; een onderstrepingsteken werkt goed als woordscheidingsteken. Als u een macronaam gebruikt die ook een celverwijzing is, krijgt u mogelijk een foutbericht dat de macronaam ongeldig is.
-
Selecteer in de lijst Macro opslaan in de locatie waarop u de macro wilt opslaan.
Over het algemeen slaat u de macro op op de locatie Deze werkmap , maar als u wilt dat een macro beschikbaar is wanneer u Excel gebruikt, selecteert u Persoonlijke macrowerkmap. Wanneer u Persoonlijke macrowerkmap selecteert, maakt Excel een verborgen persoonlijke macrowerkmap (PERSOONLIJK. XLSB) als deze nog niet bestaat en de macro in deze werkmap opslaat. Werkmappen in die map worden automatisch geopend wanneer Excel wordt gestart. Alle code die u in de persoonlijke macrowerkmap hebt opgeslagen, wordt weergegeven in het dialoogvenster Macro, dat in de volgende sectie wordt uitgelegd.
-
Als u een sneltoets wilt toewijzen voor het uitvoeren van de macro, typt u de letter (hoofdletter of kleine letter) die u wilt gebruiken, in het vak Sneltoets. U kunt het beste een toetsencombinatie gebruiken die niet overeenkomen met bestaande sneltoetsen, aangezien een macrosneltoets eventuele equivalente standaardsneltoetsen in Excel overschrijft zolang de werkmap met de macro is geopend.
-
Typ in het vak Beschrijving desgewenst een korte beschrijving van de macro.
Hoewel een beschrijving niet verplicht is, wordt het wel geadviseerd om beschrijvende tekst in te voeren. Het is handig om een zinvolle beschrijving in te voeren met informatie die nuttig kan zijn voor u of andere gebruikers die de macro gaan uitvoeren. Als u veel macro's maakt, kunt u aan de hand van de beschrijving snel bepalen welke macro wat doet, anders moet u misschien lang zoeken.
-
Klik op OK om met de opname te beginnen.
-
Voer de bewerkingen uit die u wilt opnemen.
-
Klik op het tabblad Ontwikkelaars op Opname stoppen.
Werken met opgenomen macro's in Excel
Klik op het tabblad Ontwikkelaars op Macro's om de macro's te zien die aan een werkmap zijn gekoppeld. Het dialoogvenster Macro wordt weergegeven.
Opmerking:Macro's kunnen niet ongedaan worden gemaakt. Voordat u een opgenomen macro voor de eerste keer uitvoert, moet u ervoor zorgen dat u de werkmap hebt opgeslagen waar u de macro wilt uitvoeren, of beter nog aan een kopie van de werkmap hebt gewerkt om ongewenste wijzigingen te voorkomen. Als u een macro uitvoert en deze niet doet wat u wilt, kunt u de werkmap sluiten zonder deze op te slaan.
Raadpleeg de onderstaande tabel voor meer informatie over het werken met macro's in Excel.
Taak | Beschrijving |
Macro's in- of uitschakelen | Lees hoe u macro's in Excel voor Mac in- of uitschakelt. |
Macromodules kopiëren naar een andere werkmap | Als een werkmap een VBA-macro bevat die u ergens anders wilt gebruiken, kunt u de module met de betreffende macro met behulp van Microsoft Visual Basic Editor naar een andere geopende werkmap kopiëren. |
Macro's aan objecten, vormen of afbeeldingen toewijzen |
|
Macro's aan knoppen toewijzen | U kunt een macro toewijzen aan een pictogram en het pictogram vervolgens toevoegen aan de werkbalk Snelle toegang of het lint. |
Een macro aan een besturingselement op een werkblad toewijzen | U kunt macro's toewijzen aan formulieren en ActiveX-besturingselementen in een werkblad. |
Visual Basic Editor openen | Klik op het tabblad Ontwikkelaars op Visual Basic of klik op het menu Extra > Macro > Visual Basic Editor…. |
Help-informatie opvragen over het gebruik van Visual Basic Editor | Lees hoe u Help-informatie kunt opvragen over Visual Basic-elementen. |
Meer hulp nodig?
U kunt altijd uw vraag stellen aan een expert in de Excel Tech Community of ondersteuning vragen in de Communities.