4 maneres de protegir el codi VBA (Visual Basic per a aplicacions).
El codi VBA que escriviu és el cor i l'ànima del vostre full de càlcul. La protecció del codi VBA és una cosa que s'ha de fer per assegurar-vos que el vostre codi no es roben ni s'utilitzin sense que ho sàpigues. Aquesta publicació tractarà algunes maneres diferents de protegir el vostre codi VBA perquè només TU hi pugueu accedir fàcilment.
Per què us hauríeu de preocupar per protegir el codi VBA?
VBA és un llenguatge de macro que es pot utilitzar per crear tasques o accions automatitzades en Excel, Word, PowerPoint. Hi ha diversos motius pels quals hauríeu de protegir el vostre codi VBA:
- Per protegir el vostre codi VBA de canvis accidentals. El codi VBA és una eina potent per als usuaris d'Excel, però també pot ser una font de frustració per a aquells que no l'utilitzen. Si no protegiu el VBA amb una contrasenya, els altres que utilitzin el vostre llibre de treball poden accedir al codi i fer-hi canvis sense saber què estan fent realment. No voleu depurar el vostre codi VBA perquè pot ser dolorós; pot trigar hores a esbrinar per què i després encara més temps!
- Per protegir la seva propietat intel·lectual. El codi VBA pot ser molt valuós per a algunes empreses. Si una altra persona accedeix al vostre full de càlcul i copia la funcionalitat que feu servir, podria passar-la per feina pròpia i vendre-la a moltes empreses. Protegiu el vostre codi font valuós amb mesures de seguretat. No facis fàcil per a ningú robar o copiar.
- Per protegir-te de les persones que fan servir la teva feina. Si teniu una peça valuosa de codi VBA que us facilita la feina o és més eficient, és possible que vulgueu protegir-la només per a ús personal.
És important tenir en compte que hi ha diverses maneres diferents de protegir el vostre codi VBA, però no totes protegeixen el vostre codi de la mateixa manera. Depèn de tu i del que creus que és millor per a les teves necessitats.
# 1 Protegeix el codi VBA amb contrasenya a Excel mitjançant l'eina VBAProject
Aquesta part explica com podeu utilitzar la configuració de protecció del projecte VBA per protegir el vostre codi VBA de mirades indiscretes i manipulació de mans en algun nivell.
- Nivell de seguretat: feble; Hi ha eines com Eliminador de contrasenyes de VBA que es pot utilitzar per desbloquejar la contrasenya en minuts;
- Dificultat: Fàcil;
- Cost: Gratuït;
Pas 1. Seleccioneu "Visual Basic" al menú "Desenvolupador" d'Excel.
Pas 2. Per bloquejar el vostre projecte VBA, feu clic a "Eines" a la barra i, a continuació, seleccioneu "Propietats del projecte VBA".
Després de fer clic a aquest element del menú, hauríeu de veure el següent quadre de diàleg:
La pestanya "General" està seleccionada per defecte, però feu clic a la pestanya "Protecció".
Pas 3. Marqueu "Bloqueja el projecte per veure'l" i, a continuació, introduïu la vostra contrasenya dues vegades en aquests dos quadres i premeu "D'acord".
Pas 4. Deseu-lo i torneu a obrir el fitxer Excel. Podreu saber si la protecció amb contrasenya de VBA s'ha activat correctament fent doble clic al vostre projecte VBA. Quan protegiu el vostre projecte VBA amb una contrasenya, evitarà que algú modifiqui accidentalment.
# 2 Utilitzeu l'ofuscació de VBA per protegir el vostre codi de macro
L'ofuscament de VBA és l'art de fer que el vostre codi VBA sigui il·legible però encara sigui funcional. Modifica les vostres macros existents amb diversos nivells d'ofuscament, cosa que dificulta la comprensió de la lògica subjacent. Els ofuscadors VBA avançats utilitzen diverses tècniques d'ofuscació avançades, cosa que fa que el traçat invers i la recuperació siguin considerablement més difícils.
- Nivell de seguretat: Mitjà; Algú encara podrà dedicar-se el temps i gastar prou recursos per recuperar el codi;
- Dificultat: Moderada; Segons el nivell;
- Cost: Ofuscator VBA gratuït /Premium;
Podeu utilitzar l'ofuscament de VBA juntament amb la tècnica núm. 1, que consisteix a enfosquir primer i després protegir el mòdul amb una contrasenya. Tingueu en compte que l'ofuscament és irreversible, així que feu una còpia de seguretat del fitxer font abans de continuar. Recordeu també que no es pot garantir que el codi ofuscat s'executi sense errors. Proveu-lo a fons abans de llançar-lo. Utilitzeu una sola part del projecte per ofuscar. Després que la primera prova d'ofuscament del mòdul tingui èxit, passeu a la segona.
#3 Converteix el codi VBA a la biblioteca d'enllaços dinàmics (DLL)
Els compiladors com Visual C++ i Visual Basic produeixen aplicacions que són difícils de trencar. Això es deu al fet que el codi es compila en fitxers executables o fitxers de biblioteca d'enllaços dinàmics. Així, també podem compilar el codi VBA en un fitxer de biblioteca d'enllaços dinàmics i després utilitzar-lo a Excel.
- Nivell de seguretat: alt;
- Dificultat: Moderada;
- Cost: Gratuït;
Aquest mètode de protecció és molt recomanable, però no està garantit al 100%. Per saber com compilar, consulteu les instruccions a VbaCompiler.com: 10 passos per compilar el codi VBA a la DLL nativa de Windows .
#4 Converteix VBA a C o C++
Traduir les vostres macros a C o C++ és més difícil d'enginyeria inversa que VBA. Si voleu protegir el vostre codi, aquesta és la millor manera.
- Nivell de seguretat: Màxim; És gairebé impossible obtenir el codi sense els drets; Però de nou, no està 100% garantit;
- Dificultat: Complicat i que requereix temps; Com que VBA i C/C++ són idiomes tan diferents, és més difícil, ja que haureu d'invertir molt d'esforç.
Conclusió
L'ús de macros és una bona manera d'agilitzar el desenvolupament de funcions avançades. Malauradament, això posa el vostre codi en risc de ser robat o copiat per altres. L'article tracta sobre els mètodes que podeu utilitzar per evitar que altres usuaris us roben o manipulin el vostre codi VBA. Tingueu en compte que les proteccions del codi VBA no són seguretat a prova de bales, però sí que proporcionen una certa protecció contra atacants ocasionals.