een opgenomen macro in Office aanpassen

Een opgenomen macro in Office aanpassen

Magisch Microsoft Office met VBA: Macro's bouwen voor beginners

Om eens kennis te maken met VBA, kun je beginnen met het aanpassen van een opgenomen macro in Office. In dit voorbeeld gaan we aan de slag met een Word-macro, maar een soortgelijke werkwijze geldt ook voor de andere Office-onderdelen. Onderstaande tekst is afkomstig uit het boek Magisch Microsoft Office met VBA: Macro’s bouwen voor beginners. En daarin wordt uiteraard diep ingegaan op het échte programmeerwerk!

Stel, je bedenkt je na het opnemen van de Word-macro dat je beter een andere versie van het logobestand had kunnen gebruiken; het zou dan sneu zijn als je de hele macro opnieuw zou moeten opnemen. Dat is gelukkig niet nodig, want tijdens het opnemen is er bewerkbare VBA-code gegenereerd. In het volgende hoofdstuk kijken we uitgebreider naar de Visual Basic Editor (VBE), maar nu krijg je alvast een voorproefje.

Aan de slag

1 Klik op de tab Ontwikkelaars op de knop Macro’s. Dat je dit met Alt+F8 kunt oproepen zullen we vanaf nu niet verder vermelden. Het venster Macro verschijnt, met daarin de eerder opgenomen macro (Logo_invoegen) geselecteerd.

2 Klik op Bewerken.

3 Het venster Microsoft Visual Basic for Applications verschijnt, dat we vanaf nu VBE zullen noemen. De code ziet er wellicht intimiderend uit, maar als je er even doorheen prikt zul je zien dat schijn bedriegt. Dit is de gegenereerde code.

een opgenomen macro in Office aanpassen

Een opgenomen macro staat altijd tussen de opdrachten Sub en End Sub. Achter Sub in de eerste regel staat de naam van de macro die je zelf hebt gekozen; daarna volgt de daadwerkelijke code.

De eerste vier regels mag je meteen overslaan: dat is commentaar waar niets mee gebeurt. Commentaar is bedoeld om je macro voor jezelf (of voor collega’s) te documenteren en kun je overal in de code opnemen – zelfs achter een bestaande opdracht! Commentaarregels worden voorafgegaan door de apostrof ‘ en daarachter mag je plaatsen wat je wilt. Het is een goede gewoonte om complexere macro’s nauwkeurig te documenteren. Over een jaar weet je wellicht niet precies meer wat zelfgeschreven code doet.

Echte werk

Het echte werk wordt door slechts twee opdrachten uitgevoerd: Selection.InlineShapes.AddPicture en Selection.ParagraphFormat.Alignment. Achter de opdrachten verschijnen additionele toevoegingen die parameters heten; een parameter beïnvloedt de werking van een opdracht. Laten we beide opdrachten analyseren:

een opgenomen macro in Office aanpassen

Ook al lijken dit drie regels te zijn, het is maar één opdracht die over drie regels is verdeeld. Opdrachten die over meerdere regels staan worden ‘aan elkaar gekoppeld’ met het onderstreepteken aan het eind. De eerste parameter voor AddPicture is FileName en de waarde die we eraan toekennen staat achter := en is het pad naar het bestand: C:\Huisstijl\Medialogo-blauw.png. De twee andere volgende parameters zijn LinkToFile en SaveWithDocument; de waarden die daaraan worden toegekend zijn voor nu niet belangrijk.

Willen we een ander logogestand of een andere afbeelding gebruiken, dan volstaat het om het pad tussen de dubbele aanhalingstekens aan te passen, bijvoorbeeld in C:\Huisstijl\Medialogooranje.png. Maar je kunt ook het opslagstation, de naam of de bestandsextensie wijzigen, mocht dat nodig zijn.

Meer aanpassingen

De tweede opdracht, Selection.ParagraphFormat.Alignment, kun je desgewenst ook nog aanpassen. Wil je het logo liever niet centreren, pas de waarde van de parameter Alignment dan aan naar wdAlignParagraphLeft (linkslijnend) of wdAlignParagraphRight (rechtslijnend).

Heb je de gewenste wijzigingen doorgevoerd dan kun je een van de volgende handelingen uitvoeren:

  • Sluit de VBE volledig met het sluitkruisje rechtsboven en voer de macro in Word op de vertrouwde manier uit.
  • Minimaliseer de VBE met de knop Minimaliseren rechtsboven en voer de macro in Word op de vertrouwde manier uit.
  • Klik in het menu van de VBE op Uitvoeren, Sub/UserForm uitvoeren of druk op F5; staat de tekstcursor in de code, dan wordt de macro direct uitgevoerd. Schakel over naar Word om het effect in Word terug te zien.

Magisch Microsoft Office met VBA: Macro’s bouwen voor beginners

Magisch Microsoft Office met VBA opent de deur naar de wereld van automatisering binnen de meestgebruikte kantoorsoftware ter wereld. Dit boek is jouw startpunt in je reis van macroprogrammering, speciaal ontworpen voor beginners. Het maakt korte metten met de geheimzinnigheid van de programmeertaal VBA (Visual Basic for Applications) en biedt concrete voorbeelden voor Excel, Word en PowerPoint om je op weg te helpen. Uit de inhoud:

  • Macro’s opnemen, afspelen en wijzigen
  • Werken met VBA en de Visual Basic Editor
  • Voorzichtig beginnen met zelfgeschreven macro’s
  • Meer over basisconcepten in VBA: variabelen, constanten, objecten, methodes, eigenschappen en arrays
  • Lussen en andere manieren om je macro de juiste kant op te sturen
  • Interactie met de gebruiker inbouwen via (eigen) dialoogvensters
  • Hulp uit (on)verwachte hoek: de functies van VBA
  • Fouten opsporen en verbeteren

Na het lezen van dit boek beschik je over voldoende kennis om met VBA aan de slag te gaan en kun je zelfstandig macro’s programmeren om je dagelijkse taken te automatiseren: van repetitieve taken in Excel tot het personaliseren van documentformaten in Word en het dynamisch genereren van presentaties in PowerPoint; dit boek leidt je stap voor stap door het proces!

  • een opgenomen macro in Office aanpassen
    Een opgenomen macro in Office aanpassen

    Om eens kennis te maken met VBA, kun je beginnen met een opgenomen macro in Office aanpassen. In dit voorbeeld gaan we aan de slag met een Word-macro, maar een soortgelijke werkwijze geldt ook voor de andere Office-onderdelen.

  • macro opnemen in Office
    Een Macro opnemen in Office

    Met het opnemen van een macro in Office, ‘programmeer’ je eigenlijk al in VBA, zonder daar wat spannends van te merken. Een mooie opstap dus naar het ‘betere werk’ voor later.

  • Macro's programmeren in Microsoft Office
    Macro’s programmeren in Microsoft Office

    Als je Office helemaal naar je eigen hand wilt zetten, kun je eigen macro’s programmeren in Microsoft Office.

  • code optimaliseren in Excel VBA
    Code optimaliseren in Excel VBA

    Door aan de slag te gaan met code optimaliseren in Excel VBA verkort u deze niet alleen, maar maakt u ‘m ook sneller. Onderstaand fragment is afkomstig uit Het complete Boek Excel VBA voor professionals, 4e editie.

  • hulp in Excel VBA
    Hulp in Excel VBA

    Even hulp in Excel VBA vragen is in principe zo geregeld, Er is een uitgebreide helpfunctie in de software aanwezig.

  • cellen kleuren met voorwaardelijk opmaak in Excel
    Cellen kleuren met voorwaardelijk opmaak in Excel

    Soms wordt een tabel wat onoverzichtelijk. Cellen kleuren met voorwaardelijke opmaak in Excel brengt dan helderheid!

Geef een reactie

Deze site gebruikt Akismet om spam te verminderen. Bekijk hoe je reactie gegevens worden verwerkt.