Home
 Inleiding
Wat is VBA?
 Visual Basics
 Macrorecorder
 VB-Editor
Praktijk
 Object Ref.
 Voorbeelden
 Problemen































Een macro opnemen

Een eenvoudige manier om erachter te komen hoe bepaalde Word-functies er precies in Basic uitzien is door de handelingen op te nemen met de macrorecorder en er daarna met de VBA-editor naar te kijken. Eenvoudige macro's om bijvoorbeeld de alineamarkeringen weer te geven, maar niet de spaties als puntjes, of om een specifiek woordenboek te gebruiken voor een document hoeven na het opnemen met de recorder niet per se te worden bewerkt in de VBA-editor.
Niet alle handelingen kunnen worden opgenomen. Muisbewegingen kunnen bijvoorbeeld niet naar Basiccode worden vertaald en het verplaatsen van de cursor door een (willekeurige) muisklik is dus niet toegestaan/mogelijk met de macrorecorder "aan". Menu-opdrachten kunnen wel gewoon met de muis worden gekozen, maar navigatie door de tekst moet volledig met het toetsenbord, door gebruik te maken van Ctrl (woorden, alinea's bladeren), Shift (selectie uitbreiden, wdExtend) eventueel in combinatie met Home en End.
 

De macrorecorder stap-voor-stap

  • Bepaal eerst wat de macro moet gaan doen.

  • Het voorbeeld is een macro waarmee de spelling van een Engelse brief gecontroleerd kan worden waarbij een woordenboekbestand "Engels.dic" gebruikt moet worden. De standaardtaal op de PC en van Normal.dot is Nederlands. Tijdens het typen van de brief heeft de spellingscontrole uitgestaan.
    De handelingen die verricht moeten worden zijn dus:
    • Alle tekst selecteren en de taal instellen op Engels (Ctrl+A, Extra-Taal instellen)
    • Van een reeds bestaand woordenboek "Engels.dic" de actieve aangepaste woordenlijst maken (Extra-Opties-Spelling)
    • De spellingscontrole starten (Extra-Spelling/F7)
  • Extra - Macro - Nieuwe macro opnemen...

  • Kies een macronaam die duidelijk omschrijft wat de macro doet en waardoor geen verwarring met andere macro's ontstaat.

    In het menu kan de macronaam "CheckEngels" worden ingevuld. Door de macro op te slaan in Normal.dot, kan hij vanuitalle documenten worden gestart/opgeroepen. Om de macro alleen toegankelijk te maken vanuit brieven, kan een sjabloon Brief.dot worden gemaakt, waarin de macro wordt opgenomen/opgeslagen.
     

  • Klik op Toetsenbord om de macro aan de sneltoets Alt+E toe te kennen.
  • De macro kan hiermee worden aangeroepen vanuit alle documenten, want hij wordt opgeslagen in Normal.dot.
     

  • Macrohandelingen uitvoeren

  • Tijdens het opnemen is de werkbalk "Opname stoppen" zichtbaar. Hiermee kan ook de recorder tijdelijk worden onderbroken.

    • Druk op Ctrl-A om alle tekst te selecteren
    • Klik op Extra - Taal - Taal instellen...
    • Selecteer Engels (Verenigde Staten) en klik op OK

    • Klik op Extra - Opties, tabblad Spelling
    • Zet de woordenlijst "Engels" aan en maak hem de actieve aangepaste woordenlijst

    • Ga naar het begin van het document (Ctrl+Home)
    • Start de spellingscontrole met F7
  • Annuleer de spellingscontrole en stop de opname door op de stopknop te klikken. Controleer of de macro goed werkt.

  •  
  • Open de VBA-editor en kijk hoe de macro in elkaar is gezet. En beredeneer of de macro in alle situaties goed werkt. De voorbeeldmacro zou bijvoorbeeld mislukken als de woordenlijst "Engels" niet bestaat. Er kan een instructie worden geschreven waarmee gecontroleerd wordt of de woordenlijst bestaat en zoniet, dat er een wordt gemaakt.