Inhoudsopgave
Het artikel gaat in op het inschakelen van macro's in Excel, legt de basisbeginselen van macrobeveiliging uit en laat zien hoe u de beveiligingsinstellingen kunt aanpassen om VBA-codes veilig uit te voeren.
Zoals bijna elke technologie kunnen macro's zowel ten goede als ten kwade worden gebruikt. Daarom zijn in Microsoft Excel alle macro's standaard uitgeschakeld. Deze tutorial behandelt verschillende manieren om macro's in Excel in te schakelen en legt uit welke potentiële risico's daaraan verbonden zijn.
Macro beveiliging in Excel
Voordat u macro's in uw werkbladen gaat inschakelen, is het belangrijk te begrijpen hoe gevaarlijk ze kunnen zijn.
Hoewel VBA-codes zeer effectief zijn bij het automatiseren van complexe en repetitieve taken, vormen ze een aanzienlijke bron van risico vanuit beveiligingsoogpunt. Een kwaadaardige macro die u onbewust uitvoert, kan bestanden op uw harde schijf beschadigen of volledig wissen, uw gegevens verknoeien en zelfs uw Microsoft Office-installatie beschadigen. Daarom is de standaardinstelling van Excel om alle macro's metkennisgeving.
Hoe kunt u deze gevaren vermijden? Volg één eenvoudige regel: schakel alleen veilige macro's in - macro's die u zelf hebt geschreven of opgenomen, macro's uit betrouwbare bronnen, en VBA-codes die u hebt bekeken en volledig begrijpt.
Hoe macro's inschakelen voor individuele werkmappen
Er zijn twee manieren om macro's voor een bepaald bestand in te schakelen: rechtstreeks vanuit de werkmap en via de Backstage-weergave.
Macro's inschakelen via beveiligingswaarschuwingsbalk
Met de standaard macro-instellingen verschijnt, wanneer u voor het eerst een werkmap opent die macro's bevat, de gele beveiligingswaarschuwingsbalk bovenaan het blad, direct onder het lint:
Als de Visual Basic Editor geopend is op het moment dat u het bestand met macro's opent, wordt de Microsoft Excel-beveiligingsmelding weergegeven:
Als u de bron van het bestand vertrouwt en weet dat alle macro's veilig zijn, klikt u op de knop Inhoud inschakelen of Macro's inschakelen Dit zet de macro's aan en maakt van het bestand een vertrouwd document De volgende keer dat u de werkmap opent, verschijnt de beveiligingswaarschuwing niet meer.
Als de bron van het bestand onbekend is en u macro's niet wilt inschakelen, kunt u op de knop 'X' klikken om de beveiligingswaarschuwing te sluiten. De waarschuwing verdwijnt, maar macro's blijven uitgeschakeld. Elke poging om een macro uit te voeren, resulteert in het volgende bericht.
Als u per ongeluk macro's hebt uitgeschakeld, opent u de werkmap opnieuw en klikt u op de knop Inhoud inschakelen knop op de waarschuwingsbalk.
Macro's inschakelen in Backstage-weergave
Een andere manier om macro's voor een specifieke werkmap in te schakelen is via de Office Backstage weergave. Hier leest u hoe:
- Klik op de Bestand tabblad, en klik dan op Info in het linker menu.
- In de Beveiligingswaarschuwing gebied, klik op Inhoud inschakelen > Alle inhoud inschakelen .
Net als bij de vorige methode wordt uw werkmap een vertrouwd document.
Wat u moet weten over vertrouwde documenten in Excel
Het inschakelen van macro's via een berichtenbalk of de Backstage view maakt van het bestand een vertrouwd document. Sommige Excel-bestanden kunnen echter niet tot vertrouwde documenten worden gemaakt. Bijvoorbeeld bestanden die worden geopend vanaf een onveilige locatie zoals de Temp-map, of wanneer de systeembeheerder het beveiligingsbeleid in uw organisatie zo heeft ingesteld dat alle macro's zonder kennisgeving worden uitgeschakeld. In dergelijke gevallen worden de macro's alleen ingeschakeldBij de volgende opening van het bestand zal Excel u vragen de inhoud opnieuw in te schakelen. Om dit te voorkomen, kunt u uw Trust Center-instellingen wijzigen of het bestand opslaan op een vertrouwde locatie.
Zodra een bepaalde werkmap een vertrouwd document is geworden, is er geen manier om het weer te ont-trouwen. U kunt alleen de lijst Vertrouwde documenten wissen. Doe daarvoor het volgende:
- Klik op Bestand > Opties .
- Selecteer aan de linkerkant Vertrouwenscentrum en klik dan op Instellingen voor het vertrouwenscentrum .
- In de Vertrouwenscentrum dialoogvenster, selecteer Vertrouwde documenten links.
- Klik op Duidelijk en klik dan op OK .
Hierdoor worden alle voorheen vertrouwde bestanden onvertrouwd. Wanneer u zo'n bestand opent, verschijnt de beveiligingswaarschuwing.
Tip. Als u geen documenten vertrouwd wilt maken, vinkt u de optie Vertrouwde documenten uitschakelen box. U kunt nog steeds macro's inschakelen bij het openen van een werkmap, maar alleen voor de huidige sessie.
Hoe macro's inschakelen voor één sessie
In sommige situaties ligt het voor de hand macro's slechts eenmalig in te schakelen. Bijvoorbeeld wanneer u een Excel-bestand met VBA-code hebt ontvangen dat u wilt onderzoeken, maar u dit bestand niet tot een vertrouwd document wilt maken.
De volgende instructies leiden u door de stappen om macro's in te schakelen zolang het bestand geopend is:
- Klik op de Bestand tab> Info .
- In de Beveiligingswaarschuwing gebied, klik op Inhoud inschakelen > Geavanceerde opties .
- In de Microsoft Office Beveiligingsopties dialoogvenster, selecteer Inhoud inschakelen voor deze sessie en klik OK .
Als u de werkmap sluit en daarna weer opent, verschijnt de waarschuwing weer.
Macro's inschakelen in alle werkmappen via Trust Center
Microsoft Excel bepaalt of VBA-codes wel of niet mogen worden uitgevoerd op basis van de macro-instelling die is geselecteerd in de Trust Center, Dit is de plaats waar u alle beveiligingsinstellingen voor Excel configureert.
Dit is wat u moet doen om macro's standaard ingeschakeld te krijgen in alle Excel-werkmappen:
- Klik op de Bestand tabblad, en klik dan op Opties helemaal onderaan de linkerbalk.
- Selecteer in het linkerdeelvenster Vertrouwenscentrum en klik dan op Vertrouwenscentrum Instellingen... .
Opmerkingen:
- De optie die u via het Trust Center instelt, wordt de nieuwe standaard macro-instelling Als u macro's alleen voor specifieke werkmappen wilt inschakelen, sla ze dan op een vertrouwde locatie op.
- Het inschakelen van alle macro's in alle werkmappen maakt uw computer kwetsbaar voor potentieel gevaarlijke codes.
Excel macro-instellingen uitgelegd
Hieronder lichten we alle macro-instellingen in het Trust Center kort toe, zodat u een weloverwogen beslissing kunt nemen:
- Alle macro's uitschakelen zonder kennisgeving - zijn alle macro's uitgeschakeld; er verschijnt geen waarschuwing. U kunt geen enkele macro uitvoeren, behalve de macro's die zijn opgeslagen op vertrouwde locaties.
- Alle macro's met kennisgeving uitschakelen (standaard) - macro's zijn uitgeschakeld, maar u kunt ze per geval inschakelen.
- Alle macro's uitschakelen, behalve digitaal ondertekende macro's - niet-ondertekende macro's worden uitgeschakeld met meldingen. Macro's die digitaal zijn ondertekend met een speciaal certificaat door een vertrouwde uitgever mogen worden uitgevoerd. Indien u de uitgever niet hebt vertrouwd, zal Excel u vragen de uitgever te vertrouwen en de macro in te schakelen.
- Alle macro's inschakelen (niet aanbevolen) - alle macro's zijn toegestaan, inclusief potentieel schadelijke codes.
- Vertrouwde toegang tot het VBA-projectobjectmodel - Deze instelling regelt de programmatische toegang tot het objectmodel van Visual Basic for Applications. Hij is standaard uitgeschakeld om te voorkomen dat onbevoegde programma's uw macro's wijzigen of zelfreplicerende schadelijke codes bouwen.
Houd er bij het wijzigen van de instellingen van het Trust Center rekening mee dat deze alleen van toepassing zijn op Excel, niet op alle Office-programma's.
Macro's permanent inschakelen op een vertrouwde locatie
In plaats van de globale macro-instellingen te manipuleren, kunt u Excel configureren om specifieke locaties op uw computer of lokale netwerk te vertrouwen. Elk Excel-bestand op een vertrouwde locatie wordt geopend met ingeschakelde macro's en zonder beveiligingswaarschuwingen, zelfs als de Alle macro's uitschakelen zonder kennisgeving optie is geselecteerd in de Trust Center instellingen. Hierdoor kunt u macro's uitvoeren in bepaalde werkmappen wanneer alle andere Excel macro's zijn uitgeschakeld!
Een voorbeeld van dergelijke bestanden in de Persoonlijke Macro Werkmap - alle VBA-codes in die werkmap zijn beschikbaar voor gebruik telkens wanneer u Excel opstart, ongeacht uw macro-instellingen.
Voer de volgende stappen uit om de huidige vertrouwde locaties te bekijken of een nieuwe toe te voegen:
- Klik op Bestand > Opties .
- Selecteer in het linkerdeelvenster Vertrouwenscentrum en klik dan op Vertrouwenscentrum Instellingen... .
- In de Vertrouwenscentrum dialoogvenster, selecteer Vertrouwde locaties U ziet een lijst met de standaard vertrouwde locaties. Deze locaties zijn belangrijk voor de juiste werking van Excel add-ins, macro's en sjablonen, en mogen niet worden gewijzigd. Technisch gezien kunt u uw werkmap opslaan op een van de Excel standaard locaties, maar het is beter om uw eigen locatie te creëren.
- Om uw vertrouwde locatie in te stellen, klikt u op Nieuwe locatie toevoegen... .
- Klik op de Bladeren op toets om te navigeren naar de map waar u een vertrouwde locatie van wilt maken.
- Als u wilt dat een submap van de geselecteerde map ook wordt vertrouwd, vinkt u de optie Submappen van deze locatie worden ook vertrouwd doos.
- Typ een korte mededeling in de Beschrijving veld (dit kan u helpen om meerdere locaties te beheren) of laat het leeg.
- Klik op OK .
U kunt nu uw werkmap met macro's op uw eigen vertrouwde locatie plaatsen en u niet storen aan de beveiligingsinstellingen van Excel.
Tips en opmerkingen:
- Wees zeer voorzichtig met het kiezen van een vertrouwde locatie. Omdat Excel automatisch alle macro's inschakelt in alle werkmappen die zijn opgeslagen op vertrouwde locaties, worden ze een soort mazen in uw beveiligingssysteem, kwetsbaar voor macro virussen en hacking aanvallen. Maak nooit van een tijdelijke map een vertrouwde bron. Wees ook voorzichtig met het Documenten map, maak liever een submap en wijs die aan als vertrouwde locatie.
- Als u per ongeluk een bepaalde map hebt toegevoegd aan de lijst met vertrouwde locaties, selecteert u deze en klikt u op de knop Verwijder knop.
Macro's programmatisch inschakelen met VBA
Op Excel-fora vragen veel mensen of het mogelijk is macro's programmatisch in te schakelen bij het openen van een werkmap en ze uit te schakelen voor het afsluiten. Het onmiddellijke antwoord is "Nee, dat is niet mogelijk". Omdat de beveiliging van macro's van cruciaal belang is voor de veiligheid van Excel, heeft Microsoft elke VBA-code zo ontworpen dat deze alleen wordt geactiveerd door een klik van de gebruiker.
Als Microsoft echter een deur sluit, opent de gebruiker een venster :) Als workaround stelde iemand een manier voor om de gebruiker te dwingen macro's in te schakelen met een soort "splash screen" of "instructieblad". Het algemene idee is als volgt:
U schrijft een code die alle werkbladen op één na zeer verborgen maakt (xlSheetVeryHidden). Het zichtbare blad (splash screen) zegt iets als "Please enable macros and re-open the file" of geeft meer gedetailleerde instructies.
Als macro's zijn uitgeschakeld, ziet de gebruiker alleen het werkblad "Splash Screen"; alle andere bladen zijn zeer verborgen.
Als macro's zijn ingeschakeld, maakt de code alle bladen onzichtbaar, en maakt ze weer heel onzichtbaar als de werkmap wordt gesloten.
Macro's uitschakelen in Excel
Zoals reeds vermeld, is de standaardinstelling van Excel om macro's met kennisgeving uit te schakelen en gebruikers in staat te stellen deze desgewenst handmatig in te schakelen. Wilt u alle macro's geruisloos uitschakelen, zonder kennisgeving, kies dan de overeenkomstige optie (de eerste) in het Vertrouwenscentrum.
- Klik in uw Excel op de Bestand tab> Opties .
- Selecteer in het linkerdeelvenster Vertrouwenscentrum en klik dan op Vertrouwenscentrum Instellingen... .
- Selecteer in het linkermenu Macro-instellingen kies Alle macro's uitschakelen zonder kennisgeving en klik OK .
Zo kunt u macro's in Excel in- en uitschakelen. Ik dank u voor het lezen en hoop u volgende week op onze blog te zien!