Beginnen met het gebruik van macro's in Word

Beginnen met het gebruik van macro's in Word

Moe van het uitvoeren van repetitieve taken in Microsoft Word? Begraven in het programma is een krachtige automatiseringstool die die taken uit handen kan nemen. We hebben het over macro's, en hoewel de functie afhankelijk is van Microsoft's Visual Basic for Applications (VBA), kun je deze gebruiken, zelfs als het idee van codering je de idioot geeft.





Met een klik op een knop neemt Word uw acties op en genereert een macro die u zo vaak als u wilt opnieuw kunt afspelen. Als je avontuurlijk bent, kun je de macro eenvoudig aanpassen voor een extra mate van automatisering.





Hier laten we u een eenvoudig maar nuttig voorbeeld zien: hoe u de functie Zoeken en vervangen van Word kunt automatiseren.





De macro opnemen

In dit voorbeeld bent u de gewaardeerde president van de Society for the Preservation of Antique Dental Appliances. Je hebt tientallen Word-documenten over historische kunstgebitten en dergelijke, allemaal met de naam van de samenleving prominent genoemd. Dan stemt het bestuur plotseling om de naam te veranderen in de Dental Antiques Preservation League. Nu hebt u een eenvoudige manier nodig om de documenten bij te werken.

U kunt beginnen met een nieuw leeg document of een bestaand document openen. Als je dit nog niet hebt gedaan, moet je het tabblad Ontwikkelaars inschakelen.



Ga naar Bestand > Opties > Lint aanpassen . Rechts onder Hoofdtabbladen , controleer de Ontwikkelaar optie. Selecteer OK en sluit af.

hoe nummers zichtbaar te maken op Spotify

Laten we nu onze macro maken.





  1. Klik Ontwikkelaar > Macro opnemen .
  2. U wordt gevraagd de macro een naam te geven. Voer ChangeSocietyName of een andere naam in die bij u past. Vermijd bij het benoemen van macro's spaties, punten, uitroeptekens en speciale tekens, anders krijg je een foutmelding. U kunt cijfers gebruiken, maar het eerste teken moet een letter zijn.
  3. U kunt de macro toewijzen aan een knop en/of sneltoets, maar dit is geen vereiste. Als u Button kiest, kunt u deze in Word toevoegen aan de werkbalk Snelle toegang. U kunt ook een korte beschrijving van de macro toevoegen.
  4. Klik Oke , en Word zal nu uw acties opnemen. Raken Ctrl + H naar boven brengen Zoek en vervang dialoog.
  5. Betreed de Vereniging voor het behoud van antieke tandheelkundige apparaten in Find en Dental Antique Preservation League in Replace.
  6. Klik Vervang alles om de bewerking Zoeken en vervangen uit te voeren. Dit is de enige actie die u wilt opnemen. Het maakt niet uit of de macro daadwerkelijk tekst vervangt. Het punt is om het op te slaan voor andere documenten.
  7. Dit is belangrijk: Klik op Ontwikkelaar > Opname stoppen . Anders bevat de macro alle volgende acties.

Laten we nu uw handwerk bekijken. Open een document met de naam van de vereniging. Klik Ontwikkelaar > Macro's . Als u dubbelklikt op ChangeSocietyName, voert Word automatisch de bewerking Zoeken en vervangen uit.

Tip: Terwijl u de macro opneemt, moet u mogelijk een actie uitvoeren die u niet wilt opnemen. U kunt bijvoorbeeld tekst kopiëren en plakken in het dialoogvenster Zoeken en vervangen in plaats van deze handmatig te typen. Geen probleem: klik gewoon op Ontwikkelaar > Opname pauzeren , kopieer en plak de tekst en klik vervolgens op Ontwikkelaar > Recorder hervatten . Vervolgens kunt u de macro-opname voltooien zoals hierboven beschreven.





Hoewel we ons hier op Microsoft Word hebben gericht, kunt u ook: gebruik macro's om de productiviteit in Excel te verhogen . En er zijn tal van tijdbesparende macro's voor Microsoft OneNote.

Duiken in de code

Nu gaan we dieper in op onze nieuwe Word-macro. Ga naar Ontwikkelaar > Macro's , maar in plaats van te dubbelklikken op de macro, selecteert u deze en klikt u op Bewerking . Hiermee wordt de Visual Basic-editor geopend, een op zichzelf staande omgeving voor het bouwen van VBA-toepassingen.

Het ziet er misschien ontmoedigend uit, maar u kunt de menu's en de meeste panelen negeren. Focus in plaats daarvan op het venster met de code. Zoals u kunt zien, heeft Word zojuist een macro geschreven die het zoeken en vervangen uitvoert.


Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = 'Society for the Preservation of Antique Dental Appliances'
.Replacement.Text = 'Dental Antiques Preservation League'
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

Laten we uitleggen wat hier aan de hand is.

De sub op de eerste regel is een afkorting voor subroutine, een klein programma dat op zichzelf of als onderdeel van een grotere VBA-toepassing kan worden uitgevoerd. Regels voorafgegaan door enkele aanhalingstekens zijn voor opmerkingen. De aanhalingstekens vertellen VBA om alle uitspraken op die regels te negeren.

hoe maak je een map in Android

Dan komen we bij de kern van de code: de code die de . uitvoert Zoek en vervang operatie. Zoals u kunt zien, specificeert het waarden voor elke optie in het dialoogvenster Zoeken en vervangen, inclusief de tekst en vervangende tekst tussen aanhalingstekens. De Selectie.Zoeken.Uitvoeren commando aan het einde is gelijk aan het klikken op de knop Alles vervangen.

De macro aanpassen

Om macro's te gebruiken, hoeft u niet met de code te knoeien of er zelfs maar naar te kijken. Maar je kunt meer uit deze functie halen als je bereid bent om erin te duiken. Stel dat je een typfout maakt bij het opnemen van de macro. In plaats van het opnieuw op te nemen, kunt u naar Visual Basic gaan en het repareren.

Je kunt de macro ook aanpassen om hem nuttiger te maken, en dat is wat we hier zullen doen. Wanneer u Zoeken en vervangen uitvoert, handmatig of via macro, onthoudt Word de zoek- en vervangtekst. De volgende keer dat u het dialoogvenster Zoeken en vervangen opent, ziet het er als volgt uit.

Het zou beter zijn om de waarden te wissen, zodat we een schoon dialoogvenster krijgen. We doen dat met een tweede macro, maar deze keer doen we het rechtstreeks in Visual Basic.

  1. Selecteer in de Visual Basic-editor de hele subroutine, van de eerste regel tot End Sub. Raken Ctrl + C om het te kopiëren.
  2. Plaats de cursor onder End Sub en druk op Ctrl + V . U hebt zojuist de subroutine gedupliceerd.
  3. Wijzig de naam van ChangeSocietyName in ClearFindReplace (of een andere naam die bij u past). Dit is belangrijk omdat VBA een foutmelding zal genereren als u macro's met dubbele namen probeert uit te voeren.
  4. In de .Tekst en Vervanging.Tekst waarden, verwijdert u de tekst maar laat u de aanhalingstekens staan. In wezen vertel je Word niets te vinden en te vervangen door niets, maar je verwijdert ook die waarden.

Het resultaat zou er als volgt uit moeten zien:


Sub ClearFindReplace()
'
' ClearFindReplace Macro
' Clear Text from Find and Replace dialog
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ''
.Replacement.Text = ''
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

Nu gaan we terug naar de ChangeSocietyName-macro. Voer onder de code Zoeken en vervangen, maar vóór End Sub, ClearFindReplace in (zonder haakjes aan het einde).

Dat klopt: u hoeft niet alle code in te voeren die u zojuist hebt gemaakt, alleen de naam van de macro.


Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = 'Society for the Preservation of Antique Dental Appliances'
.Replacement.Text = 'Dental Antiques Preservation League'
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
ClearFindReplace
End Sub

Wanneer Word ChangeSocietyName uitvoert, wordt eerst de oorspronkelijke functie Zoeken en vervangen uitgevoerd. Dan zal het ClearFindReplace interpreteren als een opdracht om de tweede macro uit te voeren.

Verder gaan met VBA

Zoals u kunt zien, kan de macro-opnamefunctie van Word u op talloze manieren helpen tijd te besparen. U kunt macro's maken om bijna elke bewerking te automatiseren, en in de Visual Basic-editor kunt u de macro's aanpassen, de ene macro in de andere insluiten of een subroutine maken die meerdere macro's na elkaar uitvoert.

Omdat VBA een volwaardige programmeertaal is, kunt u de subroutines opnemen in grotere toepassingen met variabelen, lussen, voorwaardelijke instructies en meer. En als je eenmaal de basis van VBA in Word hebt geleerd, kun je veel van diezelfde kennis toepassen om macro's te maken in Microsoft Excel en Access.

Windows 10 overzetten naar nieuwe pc

Om verder te gaan, wil je meer leren over VBA-conventies en de Visual Basic-editor, zoals hoe je je code organiseert en hoe je met bugs omgaat. Maar zelfs als u zich wilt houden aan eenvoudige functies zoals die hier worden beschreven, kunt u een heel eind komen in de richting van het verbeteren van uw productiviteit.

Deel Deel Tweeten E-mail Een beginnershandleiding over het schrijven van VBA-macro's in Excel (en waarom u dit zou moeten leren)

Als u Excel regelmatig gebruikt, is het de moeite waard om te leren hoe u VBA-macro's maakt en toegang krijgt tot veel meer functies en mogelijkheden.

Lees volgende
Gerelateerde onderwerpen
  • productiviteit
  • Microsoft Word
  • Microsoft Office 365
  • Microsoft Office 2016
  • Microsoft Office-tips
  • Microsoft Office 2019
  • Macro's
Over de auteur Stephen Beale(6 artikelen gepubliceerd)

Stephen Beale is een oude technologieschrijver uit de omgeving van San Francisco. Hij heeft talloze boeken geschreven over computertoepassingen in uitgeverijen en grafisch ontwerp, en is voormalig nieuws- en recensieseditor voor Macworld. Hij runt momenteel The Steampunk Explorer, een populaire website voor steampunk-enthousiastelingen.

Meer van Stephen Beale

Abonneer op onze nieuwsbrief

Word lid van onze nieuwsbrief voor technische tips, recensies, gratis e-boeken en exclusieve deals!

Klik hier om je te abonneren