Hoofdstuk 19: Macro s 19.0 Inleiding Als je steeds dezelfde actie moet uitvoeren in Excel, dan kan het de moeite waard zijn om in plaats daarvan een macro uit te voeren (afgeleid van het Griekse "μάκρο", dat groot betekent, omdat een macro een vervanging is voor een grote taak). Een toetsenbord macro is een opname van een reeks opdrachten. Elke keer als je deze serie opdrachten moet uitvoeren, dan kan je in plaats daarvan gewoon de macro uitvoeren. Er bestaan twee manieren om macro s te maken. Je kunt de VBA code schrijven in Visual Basic for Applications (geschikt voor meer complexe macro s, dan programma s genoemd) of je kunt Excel vragen om je te volgen terwijl je een reeks opdrachten handmatig uitvoert. Daarna kun je de opname afspelen om op die manier de opdrachten zo vaak als je maar wilt uit te voeren. Programmeren in Excel vereist een andere manier van werken, daarom wordt hier alleen de tweede manier bespreken. 19.1 Voor je van start gaat Toevoegen van het tabblad Ontwikkelaars Voor je de macro-opties kunt bekijken, zal je eerst het tabblad Ontwikkelaars moeten toevoegen aan het Lint: Bestand > Opties: 2010 Excel with Business 1 Hoofdstuk 19: Macro s
Vink Tabblad Ontwikkelaars aan in het vak Het Lint aanpassen: Het tabblad zal in het lint verschijnen: 2010 Excel with Business 2 Hoofdstuk 19: Macro s
Macro s inschakelen Voor je macro s kunt opnemen of uitvoeren, moet je ze eerst inschakelen. In Excel zijn, om veiligheidsredenen, alle macromacro s uitgeschakeld in de standaardinstelling. Ga naar het tabblad Ontwikkelaars en klik op macrobeveiliging in de groep Programmacode. Daarna, in het venster dat vervolgens verschijnt, klik je onder Instellingen voor macro s op Alle macromacro s inschakelen (wordt niet aanbevolen, omdat mogelijk schadelijke programmacode kan worden uitgevoerd) : 2010 Excel with Business 3 Hoofdstuk 19: Macro s
Gebruik maken van relatieve verwijzingen Wanneer je een macro opneemt, dan zal je meestal een aantal acties uitvoeren (bijvoorbeeld tekst invoegen) in cellen. De mmacro kan of deze actie uitvoeren in precies die cellen of je kunt de macro instellen zodat de opdrachten worden uitgevoerd relatief aan de een bepaalde cel die je hebt aangegeven. Om dit te doen moet je Relatieve verwijzingen gebruiken selecteren: Normaal gesproken zal je deze instelling willen selecteren wanneer je een macro opneemt, omdat je meestal een actie zult willen herhalen op een aantal verschillende plekken in het werkblad. 19.2 Een macro creëren (opnemen) Dit is de gebruiksvriendelijke manier om een macro te creëren, zonder programmeercode te moeten schrijven. Stel dat je een lijst hebt met tenniswedstrijden met twee kolommen voor de spelers. Nu wil je een derde kolom toevoegen waar je dan de winnende speler invoert en die wil je vervolgens opmaken zoals in deze afbeelding: 2010 Excel with Business 4 Hoofdstuk 19: Macro s
Je wilt niet deze cel in kolom D steeds weer opnieuw op dezelfde manier op te hoeven maken. Dus laat je nu een macro opnemen die voor je de inhoud van een cel in kolom B of C kopieert in kolom D en daarna de cel opmaakt (geel met vette tekst). Klik eerst op de cel waarvoor je een macro wilt opnemen. Stel dat dit de cel B3 is. Klik daarna op: Ontwikkelaars > Programmacode > macro opnemen Je ziet nu het volgende scherm: Geef de macro een naam, wijs een sneltoets toe (deze wordt dan gebruikt om de macro later uit te voeren; stel Ctrl-W) 1 en geef aan waar je de macro wil opslaan (de standaardinstelling Deze werkmap is meestal prima). Klik op OK. Wees nu voorzichtig, je bent aan het opnemen. Voor deze procedure : 1 De meeste Control toetsen zijn al in gebruik. Indien je de Shift toets ingedrukt houden tijdens het typen van de letter, wordt de toets combinatie Control + Shift 2010 Excel with Business 5 Hoofdstuk 19: Macro s
Stap (volg deze op exact dezelfde wijze) Ctrl-C Ctrl- Ctrl-V Ctrl-B Ctrl-I Alt-R Kies gele opvulkleur (met de muis) Kies vette rand (met de muis) Klik op het tabblad ontwikkelaars (met de muis) Klik op opname stoppen (met de muis) Verklaring Kopieert de naam van de winnaar. Verplaats de actieve cel twee naar rechts, d.w.z. naar kolom D als je gestart bent in kolom B of naar kolom E als je gestart bent in kolom C. Verplaatst de actieve cel naar kolom C ongeacht de cel waarin je begonnen bent (Ctrl betekent dat je naar het einde van het gegevensblok gaat). Verplaatst de actieve cel naar kolom D, hier ook weer ongeacht de plaats waar je gestart bent. Plakt de naam van de winnaar in kolom D Maakt de tekst vet. Maakt de tekst cursief. Toont het tabblad start (waar je de opmaakkeuzes vindt). Kleurt de cel geel. Geeft een vetgedrukte rand rond de cel. Zo zie je de optie terug waarmee je de opname kunt stoppen (of klik op het blokje in de statusbalk aan de linkerkant naast Gereed om de opname te stoppen, dan is de volgende stap is overbodig). Stopt met het opnemen van je macro. En dan is de macro compleet. Nu kan je een willekeurige tennisspeler selecteren, daarna op Ctrl-W drukken en het kopiëren en opmaken zal automatisch gebeuren: 2010 Excel with Business 6 Hoofdstuk 19: Macro s
19.3 De macro uitvoeren Nu heb je al één manier leren kennen om de macro uit te voeren door middel van de sneltoets die je zelf hebt ingesteld (in het bovenstaande voorbeeld was dat Ctrl-W). De andere manier om dit te doen, is door gebruik te maken van de macro werkbalk knop: Deze toont een lijst van alle opgeslagen macro s in elke werkmap welke op dat moment open is: 2010 Excel with Business 7 Hoofdstuk 19: Macro s
Hier kun je macro s uitvoeren en verwijderen. Stap en Bewerken zullen je naar een Visual Basic (VB) module brengen. In de VB module kun je de programmacode, die de basis vormt van de opname, bewerken. Doe dit alleen je er vertrouwen in hebt dat je deze programmeertaal voldoende te begrijpt. 2010 Excel with Business 8 Hoofdstuk 19: Macro s