Een macro voor de gebruikersinterface (UI) maken

In Microsoft Access worden macro's die zijn gekoppeld aan UI-objecten (gebruikersinterfaceobjecten) zoals opdrachtknoppen, tekstvakken, formulieren en rapporten UI-macro's genoemd. Hierdoor worden deze onderscheiden van gegevensmacro's, die zijn gekoppeld aan tabellen. U gebruikt (UI-)macro's om een reeks acties te automatiseren, zoals het openen van een ander object, het toepassen van een filter, het starten van een exportbewerking en allerlei andere taken. In dit artikel maakt u kennis met de onlangs opnieuw ontworpen opbouwfunctie voor macro's, en ziet u de basistaken die nodig zijn om een UI-macro te maken.

Opmerking: Dit artikel heeft geen betrekking op Access-web-apps, het type database dat u met Access ontwerpt en online publiceert. Zie Een Access-app maken voor meer informatie.

In dit artikel

Overzicht

Nieuw

Zelfstandige macro's maken

Ingesloten macro's maken

Acties toevoegen aan een macro

Programmastroom bepalen met If, Else If, en Else

Submacro's maken

Verwante acties groeperen

Macroacties of blokken uitvouwen en samenvouwen

Macroacties kopiëren en plakken

Een macro delen met anderen

Een macro uitvoeren

Fouten opsporen in een macro

Een macro converteren naar VBA-code

Overzicht

Macro's kunnen worden opgenomen in macro-objecten (ook wel zelfstandige macro's genoemd), of ze kunnen worden ingesloten in de gebeurteniseigenschappen van formulieren, rapporten of besturingselementen. Ingesloten macro's maken deel uit van het object of besturingselement waarin ze zijn ingesloten. Macro-objecten worden weergegeven in het navigatiedeelvenster onder Macro's; ingesloten macro's niet.

Elke macro bestaat uit een of meer macroacties. Afhankelijk van de context waarin u werkt, zijn sommige macroacties mogelijk niet beschikbaar voor gebruik. In het bijzonder is het als u een webdatabase ontwerpt niet mogelijk bepaalde macroacties te gebruiken die niet compatibel zijn met de functie voor publiceren naar Access Services.

Zie het artikel Een Access-database maken om op het web te delen voor meer informatie over het maken van webdatabases.

Begin van het document

Nieuw

Vanaf Access 2010 heeft Access een nieuwe ontwerpfunctie voor het maken van macro's. Enkele voordelen van het nieuwe ontwerp zijn:

  • Actiecatalogus    macroacties zijn georganiseerd op type en er kan op worden gezocht.

  • IntelliSense    tijdens het typen van expressies worden dankzij IntelliSense mogelijke waarden voorgesteld en kunt u de juiste selecteren.

  • Sneltoetsen    gebruik toetsencombinaties om snel en eenvoudig macro's te schrijven.

  • Programmastroom    beter leesbare macro's maken met opmerkingregels en groepen acties.

  • Voorwaardelijke instructies    ondersteuning voor geneste If/Else/Else If maakt het mogelijk meer complexe logica uit te voeren.

  • Macro's hergebruiken    in de actiecatalogus worden andere macro's die u hebt gemaakt weergegeven, zodat u ze kunt kopiëren naar de macro waaraan u werkt.

  • Eenvoudiger delen    macro's kopiëren en in een e-mailbericht, nieuwsgroeppost, blog of codevoorbeeldwebsite plakken als XML.

Begin van het document

Zelfstandige macro's maken

Met deze procedure maakt u een zelfstandig macro-object dat in het navigatiedeelvenster onder Macro's wordt weergegeven. Zelfstandige macro's zijn handig wanneer u de macro op meerdere plaatsen in de toepassing wilt gebruiken. Door de macro vanuit andere macro's aan te roepen, kunt u voorkomen dat dezelfde code op meerdere plaatsen wordt gedupliceerd.

  1. Klik op het tabblad Maken in de groep Macro's en code op Macro.

    De opbouwfunctie voor macro's van Access wordt geopend.

  2. Klik op de werkbalk Snelle toegang op Opslaan.

  3. Typ in het dialoogvenster Opslaan als een naam voor de macro en klik op OK.

  4. Ga verder naar de sectie Acties toevoegen aan een macro.

Begin van het document

Ingesloten macro's maken

Met deze procedure maakt u een macro die is ingesloten in een gebeurteniseigenschap van een object. Deze macro's wordt niet weergegeven in het navigatiedeelvenster, maar kan worden aangeroepen vanuit gebeurtenissen zoals bij laden of bij klikken.

Omdat de macro onderdeel wordt van het formulier- of rapportobject, worden ingesloten macro's aanbevolen voor het automatiseren van taken die specifiek zijn voor een bepaald formulier of rapport.

  1. Klik in het navigatiedeelvenster met de rechtermuisknop op het formulier of rapport waarin u de macro wilt maken, en klik op Indelingsweergave.

  2. Als het eigenschappenvenster nog niet wordt weergegeven, geeft u dit weer door op F4 te drukken.

  3. Klik op het besturingselement of de sectie die de gebeurteniseigenschap bevat waar u de macro wilt insluiten. U kunt het besturingselement of de sectie (of het hele formulier of rapport) ook selecteren met behulp van de vervolgkeuzelijst onder Selectietype boven aan het eigenschappenvenster.

  4. Klik in het taakvenster Eigenschappenvenster op het tabblad Gebeurtenis.

  5. Klik in het eigenschapvak voor de gebeurtenis waardoor de macro moet worden geactiveerd. Als u bijvoorbeeld wilt dat de macro wordt uitgevoerd wanneer op een opdrachtknop wordt geklikt, klikt u in het eigenschapvak Bij klikken.

  6. Als het eigenschapvak de woorden [Ingesloten macro] bevat, betekent dit dat er al een macro is gemaakt voor deze gebeurtenis. U kunt de macro bewerken door verder te gaan met de resterende stappen in deze procedure.

  7. Als het eigenschapvak het woord [Gebeurtenisprocedure] bevat, betekent dit dat er al een VBA-procedure (Visual Basic for Applications) is gemaakt voor deze gebeurtenis. Voordat u een macro in de gebeurtenis kunt insluiten, moet u de procedure verwijderen. U kunt dit doen door het woord [Gebeurtenisprocedure] te verwijderen; maar bekijk eerst de gebeurtenisprocedure om u ervan te verzekeren dat hierdoor geen benodigde functionaliteit in de database verloren gaat. In sommige gevallen kunt u de functionaliteit van de VBA-procedure opnieuw maken met behulp van een ingesloten macro.

  8. Klik op de knop Opbouwen Knopafbeelding .

  9. Als het dialoogvenster Opbouwfunctie kiezen wordt weergegeven, controleert u of Opbouwfunctie voor macro's is geselecteerd en klikt u vervolgens op OK.

    De opbouwfunctie voor macro's van Access wordt geopend. Ga verder met de volgende sectie om acties toe te voegen aan de macro.

Begin van het document

Acties toevoegen aan een macro

Acties zijn de afzonderlijke opdrachten waaruit een macro bestaat. Ze hebben namen die aangeven wat ze doen, zoals RecordZoeken of DatabaseSluiten.

Stap 1: Naar een macroactie bladeren of zoeken

De eerste stap bij het toevoegen van een actie is deze opzoeken in de vervolgkeuzelijst Nieuwe actie toevoegen of in de actiecatalogus.

Notities: 

  • Standaard worden in de vervolgkeuzelijst Nieuwe actie toevoegen alleen de acties weergegeven die kunnen worden uitgevoerd in niet-vertrouwde databases. Alle acties weergeven:

    • Klik op het tabblad Ontwerp in de groep Weergeven/verbergen op Alle acties weergeven .

  • Als de actiecatalogus niet wordt weergegeven, klikt u op het tabblad Ontwerp in de groep Weergeven/verbergen op Actiecatalogus.

Gebruik een van de volgende methoden om een actie te vinden:

  • Klik op de pijl in de vervolgkeuzelijst Nieuwe actie toevoegen en schuif omlaag naar de gewenste actie. Eerst worden programmastroomelementen weergegeven, en vervolgens de macroacties in alfabetische volgorde.

  • Blader naar de actie in het deelvenster Actiecatalogus. De acties die zijn gegroepeerd op categorie. Vouw een categorie uit om de acties weer te geven. Als u een actie selecteert, wordt onder aan de actiecatalogus een korte beschrijving van de actie weergegeven.

  • Zoek naar de actie in het deelvenster Actiecatalogus door te beginnen met typen in het zoekvak boven aan het deelvenster. Terwijl u typt, wordt de lijst met acties gefilterd zodat alleen de macro's worden weergegeven die de tekst bevatten. De tekst die u invoert, wordt zowel in de namen als in de beschrijvingen van de macro's gezocht.

Stap 2: Een actie toevoegen aan een macro

Als u de gewenste macroactie hebt gevonden, kunt u deze op een van de volgende manieren aan de macro toevoegen:

  • Selecteer een actie in de lijst Nieuwe actie toevoegen, of begin gewoon de actienaam in het vak te typen. De actie wordt toegevoegd op het punt waar de lijst Nieuwe actie toevoegen werd weergegeven.

  • Sleep de actie uit de actiecatalogus naar het macrodeelvenster. Er wordt een balk met de invoegpositie weergegeven zodat u kunt zien waar de actie wordt ingevoegd wanneer u de muisknop loslaat.

  • Dubbelklik op de actie in de actiecatalogus.

    • Als een actie is geselecteerd in het macrodeelvenster, wordt de nieuwe actie vlak onder de geselecteerde actie toegevoegd.

    • Als in het macrodeelvenster een Groep- If-, Else If-, Else-, of Submacro-blok is geselecteerd, wordt de nieuwe actie aan dat blok toegevoegd.

    • Als u geen actie of blok is geselecteerd in het macrodeelvenster, wordt de nieuwe actie toegevoegd aan het eind van de macro.

      Notities: 

      • Als u al een of meer macro's hebt gemaakt, worden deze weergegeven onder het knooppunt In deze database in de actiecatalogus.

        • Wanneer u een zelfstandige macro (een die wordt vermeld onder Macro's) naar het macrovenster sleept, wordt een MacroStarten-actie gemaakt waarmee de macro wordt uitgevoerd die u hebt gesleept. U kunt dan de vervolgkeuzelijst gebruiken om submacro's aan te roepen, indien aanwezig.

        • Als u alleen de acties van een zelfstandige macro wilt kopiëren naar de huidige macro (in plaats van een MacroStarten-actie te maken), klikt u met de rechtermuisknop in de actiecatalogus en klikt u vervolgens op Kopie van macro toevoegen.

        • Wanneer u een ingesloten macro (een die onder een formulier- of rapportobject wordt weergegeven) naar het macrodeelvenster sleept, kopieert u de acties van die macro naar de huidige macro.

      • U kunt ook een actie maken door een databaseobject vanuit het navigatiedeelvenster naar het macrodeelvenster te slepen. Als u een tabel, query, formulier, rapport of module naar het macrodeelvenster sleept, wordt een actie toegevoegd waarmee de tabel, de query, het formulier of het rapport wordt geopend. Als u een andere macro naar het macrodeelvenster sleept, wordt een actie toegevoegd waarmee die macro wordt uitgevoerd.

Stap 3: Argumenten invullen

Voor de meeste macroacties is ten minste één argument vereist. U kunt een beschrijving van elk argument weergeven door de actie te selecteren en vervolgens de muisaanwijzer op de argumenten te plaatsen. Voor veel argumenten kunt u een waarde selecteren uit een vervolgkeuzelijst. Als u voor een argument een expressie moet invoeren, helpt IntelliSense u hierbij door mogelijke waarden te suggereren terwijl u typt, zoals in de volgende illustratie:

Een expressie invoeren met behulp van IntelliSense

Als u een waarde ziet die u wilt gebruiken, kunt u deze toevoegen aan uw expressie door erop te dubbelklikken of door de waarde te markeren met de pijltoetsen en vervolgens op de toets Tab of Enter te drukken.

Raadpleeg het artikelInleiding tot expressies voor meer informatie over het maken van expressies.

Over het gebruik van IntelliSense met eigenschappen in webdatabases

Wanneer u een ingesloten UI-macro maakt in een webcompatibel formulier, kunt u met IntelliSense elke gewenste formuliereigenschap toevoegen aan een expressie. In een webdatabase kan echter slechts een subset van formuliereigenschappen worden gebruikt via UI-macro's. Als u bijvoorbeeld een besturingselement met de naam Besturingselement1 hebt op een formulier met de naam Formulier1, kunt u met IntelliSense [Forms]![Formulier1]![Besturingselement1].[ControlSource] toevoegen aan een expressie in een UI-macro. Maar als u vervolgens de database naar Access Services publiceert, genereert de macro met deze expressie een fout wanneer deze wordt uitgevoerd op de server.

In de volgende tabel ziet u de eigenschappen die u in UI-macro's in webdatabases kunt gebruiken:

Object of besturingselement

Eigenschappen die u kunt gebruiken

Formulier

Caption, Dirty, AllowAdditions, AllowDeletions, AllowEdits

Tabbesturingselement

Zichtbaar

Label

Caption, Visible, Voorgrondkleur, Achtergrondkleur

Bijlage

Zichtbaar, ingeschakeld

Opdrachtknop

Caption, Visible, Enabled, Voorgrondkleur

TextBox

Enabled, Visible, Locked, Voorgrondkleur, Achtergrondkleur, waarde

Selectievakje

Enabled, Visible, Locked, waarde

Afbeelding

Visible, Achtergrondkleur

Keuzelijst met invoervak

Enabled, Visible, Locked, waarde

Keuzelijst

Enabled, Visible, Locked, waarde

Webbrowser

Zichtbaar

Subformulier

Enabled, Visible, Locked

Navigatiebesturingselement

Enabled, Visible

Een actie verplaatsen

Acties worden uitgevoerd in volgorde, van boven naar de onderkant van de macro. Gebruik een van de volgende methoden om een actie omhoog of omlaag in de macro te verplaatsen:

  • Sleep de actie omhoog of omlaag naar de gewenste positie.

  • Selecteer de actie en druk op Ctrl+Pijl-omhoog of Ctrl+Pijl-omlaag.

  • Selecteer de actie en klik op de pijl Omhoog of Omlaag aan de rechterkant van het macrodeelvenster.

Een actie verwijderen

Een macroactie verwijderen:

  • Selecteer de actie en druk op Delete. U kunt ook op de knop Verwijderen (X) aan de rechterkant van het macrodeelvenster klikken.

    Notities: 

    • Als u een blok met acties, zoals een If-blok of een Groepsblok verwijdert, worden alle acties in het blok verwijderd.

    • De opdrachten Omhoog, Omlaag, en Verwijderen zijn ook beschikbaar in het snelmenu dat verschijnt wanneer u met de rechtermuisknop op een macroactie klikt.

Begin van het document

Programmastroom bepalen met If, Else If, en Else

Als u macroacties alleen wilt uitvoeren wanneer aan bepaalde voorwaarden wordt voldaan, gebruikt u een If-blok. Dit vervangt de kolom Voorwaarde die in eerdere versies van Access werd gebruikt. U kunt een If-blok uitbreiden met Else If- en Else- blokken, net als in andere sequentiële programmeertalen zoals VBA.

In de volgende illustratie ziet u een eenvoudig If-blok dat Else If- en Else-blokken bevat:

Een macro die een If/Else If/Else-instructie bevat.

Het If-blok wordt uitgevoerd als het veld ExpirationDate eerder is dan de huidige datum.

Het Else If-blok wordt uitgevoerd als het veld ExpirationDate gelijk is aan de huidige datum.

Het Else blok wordt uitgevoerd als beide vorige blokken niet worden uitgevoerd.

Het If-blok eindigt hier.

Een If-blok aan een macro toevoegen

  1. Selecteer If in de vervolgkeuzelijst Nieuwe actie toevoegen, of sleep het uit het deelvenster Actiecatalogus naar het macrodeelvenster.

  2. Typ in het vak boven aan het If-blok een expressie die bepaalt wanneer het blok wordt uitgevoerd. De expressie moet een booleaanse expressie zijn (dat wil zeggen een die resulteert in Ja of Nee).

  3. Voeg acties toe aan het If-blok door ze te selecteren in de vervolgkeuzelijst Nieuwe actie toevoegen die in het blok wordt weergegeven, of door ze uit het deelvenster Actiecatalogus naar het If-blok te slepen.

Else- of Else If-blokken toevoegen aan een If-blok

  1. Selecteer het If -blok en klik in de rechterbenedenhoek van het blok op Else toevoegen of Else If toevoegen.

  2. Als u een Else If-blok toevoegt, typt u een expressie die bepaalt wanneer het blok wordt uitgevoerd. De expressie moet een booleaanse expressie zijn (dat wil zeggen een die resulteert in Waar of Onwaar).

  3. Voeg acties toe aan het Else If- of Else-blok door ze te selecteren in de vervolgkeuzelijst Nieuwe actie toevoegen die in het blok wordt weergegeven, of door ze uit het deelvenster Actiecatalogus naar het blok te slepen.

    Notities: 

    • De opdrachten voor het toevoegen van If-, Else If- en Else-blokken zijn ook beschikbaar in het snelmenu dat verschijnt wanneer u met de rechtermuisknop op een macroactie klikt.

    • If-blokken kunnen maximaal 10 niveaus diep worden genest.

Begin van het document

Submacro's maken

Elke macro kan meerdere submacro's bevatten. Een submacro is bedoeld om op naam te worden aangeroepen vanuit de macroacties MacroStarten of BijFout.

U voegt een Submacro-blok op dezelfde manier aan een macro toe als een macroactie, zoals beschreven in de sectie Acties toevoegen aan een macro. Nadat u een Submacro-blok hebt toegevoegd, kunt u er macroacties naartoe slepen, of acties selecteren in de lijst Nieuwe actie toevoegen die in het blok wordt weergegeven.

Notities: 

  • U kunt ook een Submacro-blok maken door een of meer acties te selecteren, er met de rechtermuisknop op te klikken en Submacroblok maken te selecteren.

  • Een submacro moet altijd het laatste blok in een macro zijn. U kunt geen acties (behalve andere submacro's) onder een submacro toevoegen. Als u een macro die alleen submacro's bevat, uitvoert zonder de specifieke gewenste submacro te noemen, wordt alleen de eerste submacro uitgevoerd.

  • Als u een submacro wilt aanroepen (bijvoorbeeld in een gebeurteniseigenschap of met de MacroStarten- of BijFout-actie), gebruikt u de volgende syntaxis:

    macronaam.submacronaam

Begin van het document

Verwante acties groeperen

U kunt de leesbaarheid van een macro verbeteren door acties groeperen en een zinvolle naam aan de groep toe te wijzen. U kunt bijvoorbeeld acties waarmee een formulier wordt geopend en gefilterd groeperen in een groep met de naam 'Formulier openen en filteren'. Zo kunt u gemakkelijker zien welke acties aan elkaar zijn gerelateerd. Een Groepsblok is niet van invloed op hoe de acties worden uitgevoerd, en de groep kan niet afzonderlijk worden aangeroepen of uitgevoerd. Het is primair bedoeld om een groep met acties te labelen om u te helpen de macro te begrijpen wanneer u deze leest. Tijdens het bewerken van een grote macro, kunt u bovendien elk groepsblok samenvouwen tot één regel, waardoor u minder hoeft te bladeren.

Als de acties die u wilt groeperen zich al in de macro bevinden, kunt u ze met de volgende procedure aan een Groepsblok toevoegen:

  1. Selecteer de acties die u wilt groeperen.

  2. Klik met de rechtermuisknop op de geselecteerde acties en klik op Groepsblok maken.

  3. Typ in het vak boven aan het Groepsblok een naam voor de groep.

Als de acties nog niet aanwezig zijn:

  1. Sleep het Groepsblokuit de actiecatalogus naar het macrodeelvenster.

  2. Typ in het vak boven aan het Groepsblok een naam voor de groep.

  3. Sleep macroacties uit de actiecatalogus naar het Groepsblok, of selecteer acties in de lijst Nieuwe actie toevoegen die in het blok wordt weergegeven.

Groepsblokken kunnen andere Groepsblokken bevatten, en kunnen maximaal 9 niveaus diep worden genest.

Begin van het document

Macroacties of blokken uitvouwen en samenvouwen

Wanneer u een nieuwe macro maakt, worden macroacties in de opbouwfunctie voor macro's weergegeven met alle argumenten zichtbaar. Afhankelijk van de grootte van de macro, kan het een goed idee zijn om sommige of alle macroacties (en blokken met acties) te verbergen terwijl u de macro bewerkt. Dit maakt het gemakkelijker om een overzichtelijk beeld te krijgen van de structuur van uw macro. U kunt wanneer u maar wilt sommige of alle acties uitvouwen om ze te bewerken.

Eén macroactie of blok uitvouwen of samenvouwen

  • Klik op het plusteken (+) of min-teken (-) links van de macro- of bloknaam. U kunt ook op de pijltoetsen omhoog en omlaag drukken om een actie of blok te selecteren en vervolgens op de pijltoetsen naar links of rechts drukken om de actie of het blok samen- of uit te vouwen.

Alle macroacties (maar niet blokken) uit- of samenvouwen

  • Klik op het tabblad Ontwerp in de groep Samenvouwen/uitvouwen op Acties uitvouwen of Acties samenvouwen.

Alle macroacties en blokken uit- of samenvouwen

  • Klik op het tabblad Ontwerp in de groep Samenvouwen/uitvouwen op Alles uitvouwen of Alles samenvouwen.

Tip:  U kunt een samengevouwen actie even inzien door de aanwijzer op de actie te houden. De argumenten van de actie worden weergegeven in knopinfo.

Begin van het document

Macroacties kopiëren en plakken

Als u acties wilt herhalen die u al aan een macro hebt toegevoegd, kunt u de bestaande acties kopiëren en plakken zoals u dat zou doen met alinea's in een tekstverwerker. Wanneer u acties plakt, worden ze vlak onder de momenteel geselecteerde actie ingevoegd. Als er een blok is geselecteerd, worden de acties binnen het blok geplakt.

Tip:  Als u geselecteerde acties snel wilt dupliceren, houdt u Ctrl ingedrukt en sleept u de actie(s) naar de locatie in de macro waarnaar u ze wilt kopiëren.

Een macro delen met anderen

Wanneer u macroacties naar het Klembord kopieert, kunnen deze in elke toepassing waarin tekst wordt geaccepteerd worden geplakt als XML (Extensible Markup Language). Op deze manier kunt u een macro naar een collega sturen in een e-mailbericht of de macro posten op een discussieforum, blog of andere website. De ontvanger kan vervolgens de XML kopiëren en plakken in de opbouwfunctie voor macro's van Access 2010. De macro wordt weer precies gemaakt zoals u deze hebt geschreven.

Macro's uitvoeren

U kunt een macro uitvoeren met behulp van een van de volgende methoden:

  • Dubbelklik in het navigatiedeelvenster op de macro.

  • De macro aanroepen met de macroactie MacroStarten of BijFout.

  • De macronaam invoeren in een gebeurteniseigenschap van een object. De macro wordt uitgevoerd wanneer die gebeurtenis wordt getriggerd.

Begin van het document

Fouten opsporen in een macro

Als u problemen hebt bij het uitvoeren van een macro, zijn er een aantal hulpmiddelen die u kunt gebruiken om de oorzaak van het probleem te achterhalen.

Foutafhandelingsacties toevoegen aan een macro

Wij raden aan om aan elke macro foutafhandelingsacties toe te voegen terwijl u deze schrijft, en ze permanent in de macro te laten staan. Wanneer u deze methode gebruikt, worden er beschrijvingen weergegeven van fouten wanneer deze zich voordoen. De beschrijvingen helpen u de fout te begrijpen, zodat u het probleem sneller kunt oplossen.

Gebruik de volgende procedure om een submacro voor foutafhandeling aan een macro toe te voegen:

  1. Open de macro in de ontwerpweergave.

  2. Selecteer onder aan de macro Submacro in de vervolgkeuzelijst Nieuwe actie toevoegen.

  3. Typ in het vak rechts van het woord Submacro een naam voor de submacro, zoals ErrorHandler.

  4. Selecteer in de vervolgkeuzelijst Nieuwe actie toevoegen die wordt weergegeven in het blok Submacro de macroactie Berichtvak.

  5. Typ in het vak Bericht de volgende tekst: =[MacroError].[Description]

  6. Selecteer onder aan de macro BijFout in de vervolgkeuzelijst Nieuwe actie toevoegen.

  7. Stel het argument Ga naar in op Macronaam.

  8. Typ in het vak Macronaam de naam van uw submacro voor foutafhandeling (in dit voorbeeld ErrorHandler).

  9. Sleep de macroactie BijFout helemaal naar het begin van de macro.

In de volgende afbeelding ziet u een macro met de actie BijFout en een submacro met de naam ErrorHandler.

Een macro met een submacro voor foutafhandeling.

De macroactie BijFout wordt boven aan de macro geplaatst en roept de submacro ErrorHandler aan als er een fout optreedt.

De submacro ErrorHandler wordt alleen uitgevoerd als deze wordt aangeroepen door de actie BijFout, en geeft een berichtvak weer waarin de fout wordt beschreven.

De opdracht Macrostap gebruiken

Macrostap is een macrofoutopsporingsmodus die u kunt gebruiken om een macro met één actie tegelijk uit te voeren. Na elke actie is uitgevoerd, verschijnt een dialoogvenster met informatie over de actie en eventuele foutcodes die zijn opgetreden. Omdat er in het dialoogvenster Macrostap geen beschrijving van de fout wordt gegeven, raden we echter aan de submacromethode voor het afhandelen van fouten te gebruiken die in de vorige sectie wordt beschreven.

Stapsgewijze modus starten:

  1. Open de macro in de ontwerpweergave.

  2. Klik op het tabblad Ontwerp in de groep Extra op Macrostap.

  3. Sla de macro op en sluit deze.

De volgende keer dat u de macro uitvoert, wordt het dialoogvenster Macro stap-voor-stap uitvoeren weergegeven. In het dialoogvenster wordt de volgende informatie weergegeven over elke actie:

  • Macronaam

  • Voorwaarde (voor If-blokken)

  • Actienaam

  • Argumenten

  • Foutnummer (foutnummer 0 betekent dat er geen fout is opgetreden)

Wanneer u de acties doorloopt, klikt u op een van de drie knoppen in het dialoogvenster:

  • Als u informatie wilt zien over de volgende actie in de macro, drukt u op Stap.

  • Als u alle macro's die momenteel worden uitgevoerd wilt stoppen, klikt u op Alle macro's stoppen. De stapsgewijze modus is nog steeds actief wanneer u de volgende macro uitvoert.

  • Als u de Macrostap-modus wilt afsluiten en doorgaan met uitvoeren van de macro, klikt u op Doorgaan.

    Notities: 

    • Als u op Stap drukt na de laatste actie in een macro, is de stapsgewijze modus nog steeds actief wanneer u de volgende keer een macro uitvoert.

    • Als u naar de stapsgewijze modus wilt gaan terwijl er een macro word uitgevoerd, drukt u op Ctrl+Break.

    • Als op een specifiek punt in een macro naar de stapsgewijze modus wilt gaan, voegt u op dat punt de macroactie StapVoorStap toe.

    • De stapsgewijze modus is niet beschikbaar in een webdatabase.

Begin van het document

Een macro converteren naar VBA-code

Macro's bevatten een subset van de opdrachten die beschikbaar zijn in de programmeertaal VBA (Visual Basic for Application). Als u meer functionaliteit nodig hebt dan macro's kunnen bieden, kunt u een zelfstandig macro-object gemakkelijk converteren naar VBA-code en vervolgens gebruikmaken van de uitgebreide functieset van VBA. Houd er echter rekening mee dat VBA-code niet kan worden uitgevoerd in een browser. VBA-code die u aan een webdatabase toevoegt, wordt alleen uitgevoerd wanneer de database in Access is geopend.

Opmerking:  U kunt ingesloten macro's niet converteren naar VBA-code.

Een macro converteren naar VBA-code:

  1. Klik in het navigatiedeelvenster met de rechtermuisknop op het macro-object en klik vervolgens op Ontwerpweergave.

  2. Klik op het tabblad Ontwerpen in de groep Hulpmiddelen op Macro's converteren naar Visual Basic.

  3. Geef in het dialoogvenster Macro converteren op of u foutafhandelingscode en opmerkingen wilt toevoegen aan de VBA-module en klik op Converteren.

Er wordt bevestigd dat de macro is geconverteerd, en de Visual Basic Editor wordt geopend. Dubbelklik op de geconverteerde macro in het projectvenster om de module te bekijken en te bewerken.

Begin van het document

Uw Office-vaardigheden uitbreiden
Training verkennen
Als eerste nieuwe functies krijgen
Deelnemen aan Office Insiders

Was deze informatie nuttig?

Bedankt voor uw feedback.

Hartelijk dank voor uw feedback! Het lijkt ons een goed idee om u in contact te brengen met een van onze Office-ondersteuningsagents.

×