Muis- en toetsenbordhandelingen opnemen en automatiseren
Bij het opnemen van een macro worden de handelingen die u met de muis en het toetsenbord uitvoert, inclusief hun timing, ongewijzigd opgeslagen als een ‘reeks stappen’. Door de opgenomen macro af te spelen, kunt u exact dezelfde handelingen onbeperkt herhalen, veel sneller en nauwkeuriger dan een mens. Programmeerkennis is niet nodig: u hoeft uw normale werkzaamheden slechts één keer handmatig uit te voeren. Daarmee is dit een van de eenvoudigste manieren om met automatisering te beginnen. In dit artikel leggen we het volledige proces stap voor stap uit, van opnemen en afspelen tot nauwkeurige aanpassingen.
Stap 1: De opname voorbereiden
Met een beetje voorbereiding voordat u begint, neemt de kans op een geslaagde opname aanzienlijk toe. Open eerst de apps en vensters die bij de te automatiseren taak horen en plaats ze zoals u gewend bent. Maximaliseer de vensters vervolgens zo veel mogelijk. Veel macro’s werken op basis van schermcoördinaten. Als de positie of grootte van een venster bij het opnemen anders is dan bij het afspelen, kan daardoor op een onbedoelde plek worden geklikt. Door de vensters te maximaliseren, beperkt u deze ‘verschuiving’ tot een minimum.
Het helpt ook om de op te nemen procedure vooraf één keer in gedachten te oefenen. Als u van tevoren bepaalt ‘welke knoppen u in welke volgorde indrukt’, voorkomt u dat twijfel tijdens de opname tot onnodige handelingen leidt. Gaat er onderweg toch iets mis, dan kunt u de overbodige stappen later afzonderlijk verwijderen. U hoeft dus niet overdreven voorzichtig te zijn.
Stap 2: De handelingen opnemen
Druk zodra alles klaarstaat op de opnamesneltoets (F9 in makuroku). Voer uw werk daarna gewoon uit zoals altijd: open een bestand, selecteer een bereik, kopieer, schakel naar een ander venster, plak en sla op. Elke klik en toetsaanslag wordt in de juiste volgorde opgenomen. Wanneer u klaar bent, drukt u nogmaals op dezelfde sneltoets om de opname te stoppen. De volledige reeks handelingen is nu opgeslagen als een herbruikbare macro.
Een kleine tip voor het opnemen: werk in een vlot tempo, zodat er geen onnatuurlijke ‘wachttijden’ tussen klikken ontstaan. Moet u echter wachten totdat een app is geladen of het scherm is gewisseld, dan wordt die wachttijd ook gewoon opgenomen. Juist zulke ‘pauzes’ maken het afspelen vaak stabieler, dus u hoeft zich niet te haasten.
Stap 3: De snelheid en herhalingen instellen en de macro afspelen
Om de macro af te spelen, drukt u eenvoudig op de afspeelsneltoets (F5 in makuroku). De echte kracht van een macro is echter dat u vóór het afspelen de ‘snelheid’ en het ‘aantal herhalingen (lussen)’ kunt instellen. Bij een dubbele snelheid is het werk in de helft van de opnametijd klaar. Reageert een app langzaam, dan kunt u de snelheid juist verlagen om te voorkomen dat handelingen worden overgeslagen.
Het instellen van het aantal herhalingen is vooral effectief bij grote hoeveelheden repetitief werk. Als u bijvoorbeeld een macro voor ‘één document verwerken’ 100 keer laat herhalen, kunnen 100 documenten in enkele minuten worden verwerkt. Werk dat handmatig een uur kostte, hoeft nu maar één keer te worden opgenomen; daarna hoeft u alleen op de voltooiing van het afspelen te wachten. Juist het idee ‘één keer opnemen en onbeperkt afspelen’ vormt de kern van tijdwinst door automatisering.
Oorzaken van verschuivingen in de opname en oplossingen
Wanneer mensen macro’s beginnen te gebruiken, lopen velen als eerste tegen het probleem aan dat ‘de klikpositie tijdens het afspelen verschuift’. Dit komt meestal doordat de schermsituatie tijdens de opname verschilt van die tijdens het afspelen. Zo kunnen de schermresolutie of weergaveschaal zijn gewijzigd, kan het venster een andere positie of grootte hebben, of kan de macro op een andere monitor worden afgespeeld.
Er zijn verschillende oplossingen. De eenvoudigste is om het venster zowel bij het opnemen als bij het afspelen te maximaliseren en dezelfde scherminstellingen te gebruiken. Als dat het probleem niet oplost, kunt u opnieuw opnemen in de venstergebonden ‘modus voor relatieve coördinaten’. Daarbij wordt niet de positie op het hele scherm opgenomen, maar de relatieve positie binnen het venster, waardoor verschillen in resolutie minder invloed hebben. Nog betrouwbaarder is de hierna besproken ‘beeldherkenning’, waarmee wordt geklikt op basis van hoe iets eruitziet in plaats van waar het zich bevindt.
Verhoog de kwaliteit door stappen achteraf te bewerken
Zelfs als u tijdens de opname één keer per ongeluk op de verkeerde knop klikt, hoeft u niet opnieuw te beginnen. In makuroku kunt u een opgenomen macro achteraf stap voor stap bewerken. U kunt onnodige klikken verwijderen, de volgorde wijzigen, wachttijden toevoegen of alleen de coördinaten van een bepaalde stap nauwkeurig aanpassen, zonder opnieuw op te nemen.
Met deze mogelijkheid tot nabewerking tilt u de automatisering naar een hoger niveau. Als u bijvoorbeeld handmatig een stap toevoegt als ‘even wachten totdat het dialoogvenster voor opslaan verschijnt’, wordt het afspelen stabieler. Daarnaast kunt u de opgenomen macro omzetten in een ‘bewerkbaar script’ en geavanceerdere verwerking toevoegen, zoals voorwaardelijke vertakkingen en lussen. Maak eerst met een opname het raamwerk en werk dit daarna verder uit door nabewerking of scripts toe te voegen. Deze tweefasenaanpak is de snelste route naar automatisering die in de praktijk bruikbaar is.
De verwerking van wachttijden bepaalt de stabiliteit van het afspelen
Een van de grootste struikelblokken bij opgenomen macro’s is de verwerking van ‘wachttijden’. Mensen wachten onbewust tot een app reageert of het scherm is gewisseld voordat ze de volgende handeling uitvoeren. Een opgenomen macro speelt de timing van de opname echter exact na. Als de afspeelomgeving maar iets trager reageert, kan de macro daardoor proberen op een ‘knop die nog niet wordt weergegeven’ te klikken en mislukken.
Er zijn twee oplossingen. De eerste is om handmatig een vaste wachttijd toe te voegen, oftewel een WAIT-stap. Met een instructie als ‘wacht na de klik 0,5 seconde’ kunnen kleine vertragingen worden opgevangen. De tweede, betrouwbaardere methode is wachten op basis van de schermstatus. Met voorwaardelijk wachten, zoals ‘wacht totdat het pictogram verschijnt dat aangeeft dat het laden is voltooid’, gaat het proces ook bij een trage netwerk- of apprespons precies op het juiste moment verder, zonder te lang of te kort te wachten. Het is niet overdreven om te zeggen dat stabiele automatisering staat of valt met het ontwerp van deze wachttijden.
Controlelijst voor als de opname niet goed werkt
Wanneer het afspelen niet verloopt zoals verwacht, is het aantal mogelijke oorzaken verrassend beperkt. Door de volgende punten op volgorde te controleren, kunnen de meeste problemen worden opgelost.
- • Zijn de positie en de grootte van het venster tijdens het opnemen en afspelen hetzelfde?
- • Zijn de schermresolutie of de weergaveschaal gewijzigd?
- • Is er vóór het klikken voldoende wachttijd zodat het doelelement kan verschijnen?
- • Blokkeert de beveiligingssoftware het opnemen of verzenden van invoer?
- • Is de afspeelsnelheid zo hoog dat de app niet op tijd kan reageren?
Als het probleem na deze controles nog niet is opgelost, is het effectief om onderdelen die van coördinaten afhankelijk zijn te vervangen door beeldherkenning. Door te klikken op basis van het ‘uiterlijk’ in plaats van de ‘zichtbare positie’, wordt de automatisering beter bestand tegen verplaatste vensters en verschillen in resolutie. Baken het probleem eerst af met de basischecklist en versterk daarna alleen de onderdelen die nog instabiel zijn met beeldherkenning. In deze volgorde kunt u efficiënt een robuuste automatisering opbouwen.
Taken waarvoor opgenomen macro’s wel en niet geschikt zijn
Opgenomen macro’s zijn niet universeel inzetbaar. Als u begrijpt voor welke taken ze wel en niet geschikt zijn, voorkomt u onnodig uitproberen. Ze zijn het meest geschikt voor ‘taken die elke keer exact volgens dezelfde procedure verlopen’. Hetzelfde scherm openen, op dezelfde plek klikken en dezelfde tekst invoeren: zulke routinetaken kunnen betrouwbaar worden geautomatiseerd door ze simpelweg op te nemen. Typische voorbeelden zijn het invullen van een vast formulier, het verzenden van standaardmails en het opslaan van bestanden volgens een vaste procedure.
Daarentegen zijn ze minder geschikt voor ‘taken waarbij de situatie elke keer verandert’. Als de hoeveelheid te verwerken gegevens per dag verschilt, de inhoud op het scherm afhankelijk van de situatie verandert of menselijk oordeel nodig is, volstaat eenvoudig opnemen en afspelen niet. Dit betekent echter niet dat zulke taken ‘absoluut onmogelijk zijn met opgenomen macro’s’. Maak met de opname de basisstructuur en vul alleen de veranderlijke delen aan met voorwaardelijke vertakkingen, lussen in het script of beeldherkenning. Zo komen veel taken alsnog binnen het bereik van automatisering.
Het is belangrijk om niet koste wat kost ‘alles uitsluitend met opnames te willen automatiseren’. Verdeel de taak in ‘vaste onderdelen’ en ‘veranderlijke onderdelen’: gebruik opnames voor de vaste delen en enkele gerichte aanpassingen voor de veranderlijke delen. Als u dit onderscheid goed kunt maken, zult u merken dat verrassend veel taken die op het eerste gezicht ingewikkeld lijken, kunnen worden geautomatiseerd.
Beschouw een opgenomen macro bovendien niet als ‘klaar zodra hij is gemaakt’, maar als iets dat u tijdens het gebruik geleidelijk verbetert. Ook als de werking aanvankelijk wat stroef is, kunt u de macro in de praktijk uitvoeren en opvallende problemen — zoals een te korte wachttijd of stoppen halverwege — achteraf via bewerking corrigeren. Zo groeit de macro geleidelijk uit tot een stabiel en praktisch hulpmiddel. In plaats van door perfectionisme niet te durven beginnen, kunt u beter eerst iets maken dat werkt en dit vervolgens verder ontwikkelen. Die houding is de sleutel om het op lange termijn vol te houden.
Inzicht in opname- en afspeelsnelheid
De afspeelsnelheid van een macro is een belangrijke factor voor de effectiviteit van automatisering. Een macro kan op dezelfde snelheid worden afgespeeld als waarmee hij is opgenomen, maar bij veel tools kunt u de snelheid vrij aanpassen. Met een hogere snelheid is het werk sneller klaar, maar als de snelheid te hoog is, kan de toepassing mogelijk niet op tijd reageren en kunnen klikken hun doel missen. Als betrouwbaarheid belangrijker is, kunt u de snelheid beter iets lager instellen.
Het is raadzaam eerst te controleren of de macro betrouwbaar werkt op normale snelheid (1×). Verhoog de snelheid daarna stapsgewijs om de hoogste instelling te vinden waarbij alles goed blijft werken. De optimale snelheid hangt af van de taak en de reactiesnelheid van de toepassing. In lussen die grote hoeveelheden gegevens verwerken, kan zelfs een kleine tijdwinst per item in totaal een groot verschil maken. Stem de balans tussen ‘snelheid’ en ‘betrouwbaarheid’ af op uw eigen werk.
Een opgenomen macro veilig testen
Het is riskant om een pas gemaakte macro meteen op productiegegevens uit te voeren. Automatisering voert handelingen ‘snel, nauwkeurig en zo vaak als nodig’ uit. Als er een fout in de procedure zit, worden daardoor in hoog tempo grote aantallen onjuiste bewerkingen uitgevoerd. Volg daarom altijd een testprocedure om onherstelbare gevolgen te voorkomen.
Er zijn drie belangrijke aandachtspunten voor veilig testen. Gebruik ten eerste testgegevens of kopieën van bestanden. Zolang u niet rechtstreeks met productiegegevens werkt, veroorzaakt een mislukking geen schade. Stel ten tweede de lus aanvankelijk in op één uitvoering en kies een lage snelheid, zodat u elke beweging visueel kunt controleren. Verhoog ten derde pas geleidelijk het aantal uitvoeringen en de snelheid wanneer u hebt bevestigd dat alles volgens verwachting werkt. Met deze voorzichtige aanpak kunt u automatisering met vertrouwen in uw werkzaamheden invoeren.
Meerdere macro’s combineren
Wanneer u eraan gewend bent geraakt één taak in één macro onder te brengen, is de volgende stap het combineren van meerdere macro’s. In plaats van een lang proces tot één enorme macro te maken, kunt u het beter per logisch onderdeel opsplitsen in kleine macro’s. Dat maakt het latere beheer veel eenvoudiger. Als u het proces bijvoorbeeld opsplitst in de drie kleine macro’s ‘gegevens ophalen’, ‘samenvatten’ en ‘rapport uitvoeren’, hoeft u alleen het betreffende onderdeel te vervangen wanneer u uitsluitend de samenvattingsmethode wilt wijzigen.
Een ander voordeel van kleine macro’s is dat u ze als bouwstenen kunt hergebruiken. Als u eenmaal een macro voor ‘een standaardmail verzenden’ hebt gemaakt, kunt u deze telkens opnieuw in uiteenlopende werkzaamheden aanroepen. Door veelgebruikte handelingen als bouwstenen op te slaan, kunt u nieuwe automatiseringen snel voltooien door bestaande onderdelen te combineren. Macro’s ontwerpen als ‘herbruikbare bouwstenen’ in plaats van ‘eenmalige hulpmiddelen’ verhoogt de productiviteit van automatisering aanzienlijk.
makuroku bevat ook een opdracht waarmee u vanuit een script andere macro’s of scripts kunt aanroepen. Zo kunt u kleine bouwstenen combineren tot grotere automatiseringen. In het begin is één macro per taak voldoende, maar naarmate het aantal automatiseringen groeit, kunt u met deze aanpak van ‘modulariseren en combineren’ zelfs complexe processen automatiseren en tegelijkertijd overzichtelijk organiseren.
Het is belangrijk niet meteen naar een groot en complex systeem te streven. Automatiseer eerst één taak op betrouwbare wijze en breng structuur aan zodra het aantal automatiseringen groeit. Door deze natuurlijke ontwikkeling te volgen, kunt u uw automatisering zonder overbelasting maar wel gestaag verfijnen.
Macro’s ordenen tot ‘uw persoonlijke gereedschapskist’
Zodra een macro goed werkt, slaat u deze op onder een duidelijke naam die u later zelf nog begrijpt. Ideaal is een naam waaraan u de taak direct herkent, zoals ‘verkooprapport samenvatten’ of ‘factuur als PDF opslaan’. Door op deze manier macro’s één voor één te verzamelen, bouwt u uiteindelijk uw eigen ‘gereedschapskist voor automatisering’ op.
Een taak die vroeger enkele minuten kostte, is nu met één sneltoets klaar. Al die kleine tijdsbesparingen samen geven u aan het einde van de dag veel extra ruimte. Met makuroku kunt u op Windows gratis alles in één app uitproberen: opnemen, afspelen, achteraf bewerken, scripts maken en geplande uitvoering. Begin vandaag nog met het samenstellen van uw eigen gereedschapskist door eerst één van uw werkzaamheden op te nemen.
Probeer gratis
Automatiseer het met makuroku
makuroku neemt je muis en toetsenbord op en speelt ze automatisch af. Voeg SCR-scripts en AI-(MCP-)integratie toe wanneer je meer nodig hebt. Alle functies gratis op Windows.
Meer artikelen