4 måter å beskytte VBA-kode (Visual Basic for Applications).

VBA-koden du skriver er hjertet og sjelen i regnearket ditt. Beskyttelse av VBA-kode er noe som bør gjøres for å sikre at koden din ikke blir stjålet eller brukt uten at du vet det. Dette innlegget vil dekke noen forskjellige måter å beskytte VBA-koden din på, slik at bare DU enkelt kan få tilgang til den.
Hvorfor bør du bry deg om å beskytte VBA-koden?
VBA er et makrospråk som kan brukes til å lage automatiserte oppgaver eller handlinger i Excel, Word, PowerPoint. Det er flere grunner til at du bør beskytte VBA-koden din:
- For å beskytte VBA-koden din mot å bli endret ved et uhell. VBA-kode er et kraftig verktøy for Excel-brukere, men det kan også være en kilde til frustrasjon for de som ikke bruker den. Hvis du ikke sikrer VBA med et passord, kan andre som bruker arbeidsboken din få tilgang til koden og gjøre endringer i den uten å vite hva de faktisk gjør. Du vil ikke feilsøke VBA-koden din fordi det kan være smertefullt – det kan ta timer å finne ut hvorfor og deretter enda mer tid!
- For å beskytte din immaterielle eiendom. VBA-kode kan være svært verdifull for noen selskaper. Hvis noen andre får tilgang til regnearket ditt og kopierer funksjonaliteten du bruker, kan de potensielt gi det ut som sitt eget arbeid og selge det til mange selskaper. Beskytt din verdifulle kildekode med sikkerhetstiltak. Ikke gjør det lett for noen å stjele eller kopiere.
- For å beskytte deg selv mot folk som bruker arbeidet ditt. Hvis du har et verdifullt stykke VBA-kode som gjør arbeidet ditt enklere eller mer effektivt, kan det være lurt å beskytte det kun for personlig bruk.
Det er viktig å merke seg at det er flere forskjellige måter å beskytte VBA-koden på, men ikke alle beskytter koden din på samme måte. Det er opp til deg og hva du synes er best for dine behov.
#1 Passordbeskytt VBA-kode i Excel ved å bruke VBAProject Tool
Denne delen forklarer hvordan du kan bruke VBA-prosjektbeskyttelsesinnstillinger for å beskytte VBA-koden din mot nysgjerrige øyne og tukling med hender på et eller annet nivå.
- Sikkerhetsnivå: Svak; Det finnes verktøy som f.eks VBA Password Remover som kan brukes til å låse opp passordet på minutter;
- Vanskelighetsgrad: Lett;
- Kostnad: Gratis;
Trinn 1. Velg "Visual Basic" fra "Utvikler"-menyen i Excel.
Trinn 2. For å låse VBA-prosjektet ditt, klikk "Verktøy" i linjen og velg deretter "VBAProject Properties".
Etter å ha klikket på dette menyelementet, bør du se følgende dialogboks:
Fanen "Generelt" er valgt som standard, men klikk på fanen "Beskyttelse".
Trinn 3. Sjekk "Lås prosjekt for visning" og skriv deretter inn passordet ditt to ganger i begge disse boksene og trykk "OK".
Trinn 4. Lagre den og åpne Excel-filen på nytt. Du vil kunne se om VBA-passordbeskyttelse var riktig aktivert ved å dobbeltklikke på VBA-prosjektet ditt. Når du beskytter VBA-prosjektet ditt med et passord, vil det forhindre at noen endrer seg ved et uhell.
#2 Bruk VBA-obfuscation for å beskytte makrokoden din
VBA-obfuskering er kunsten å gjøre VBA-koden uleselig, men fortsatt funksjonell. Den modifiserer eksisterende makroer med flere nivåer av tilsløring som gjør det vanskelig å forstå den underliggende logikken. Avanserte VBA-obfuscatorer bruker en rekke avanserte obfuskeringsteknikker, noe som gjør omvendt sporing og gjenoppretting betydelig mer utfordrende.
- Sikkerhetsnivå: Middels; Noen vil fortsatt kunne ta seg tid og bruke nok ressurser til å gjenopprette koden;
- Vanskelighetsgrad: Moderat; Avhengig av nivået;
- Koste: Gratis VBA Obfuscator /Premium;
Du kan bruke VBA-obfuskering i takt med #1-teknikken, som er å først skjule og deretter sikre modulen med et passord. Vær oppmerksom på at tilsløringen er irreversibel, så ta en sikkerhetskopi av kildefilen før du fortsetter. Husk også at den obfuskerte koden ikke kan garanteres å kjøre uten feil. Vennligst test den grundig før du slipper den. Bruk en enkelt del av prosjektet for å skjule. Etter at den første modulobfuskeringstesten er vellykket, går du videre til den andre.
#3 Konverter VBA-kode til Dynamic-Link Library (DLL)
Kompilatorer som Visual C++ og Visual Basic produserer applikasjoner som er vanskelige å knekke. Dette skyldes det faktum at koden er kompilert til kjørbare filer eller biblioteksfiler for dynamiske koblinger. Så vi kan også kompilere VBA-koden til en dynamisk lenkebiblioteksfil og deretter bruke den i Excel.
- Sikkerhetsnivå: Høyt;
- Vanskelighetsgrad: Moderat;
- Kostnad: Gratis;
Denne beskyttelsesmetoden anbefales sterkt, men den er ikke 100 % garantert. For å lære hvordan du kompilerer, se instruksjonene på VbaCompiler.com: 10 trinn for å kompilere VBA-kode til opprinnelig Windows DLL .
#4 Konverter VBA til C eller C++
Å oversette makroene dine til C eller C++ er vanskeligere å reversere enn VBA. Hvis du vil beskytte koden din, er dette den beste måten.
- Sikkerhetsnivå: Høyest; Det er nesten umulig å få koden uten rettighetene; Men igjen, det er ikke 100 % garantert;
- Vanskelighetsgrad: Komplisert og tidkrevende; Fordi VBA og C/C++ er så forskjellige språk, er det vanskeligere siden du må investere mye krefter.
Konklusjon
Å bruke makroer er en fin måte å effektivisere utviklingen av avanserte funksjoner. Dessverre risikerer dette koden din å bli stjålet eller kopiert av andre. Artikkelen diskuterer metoder du kan bruke for å hindre andre brukere i å stjele eller tukle med VBA-koden din. Vær oppmerksom på at VBA-kodebeskyttelsen ikke er skuddsikker sikkerhet, men den gir en viss beskyttelse mot tilfeldige angripere.