VBA protection software – VbaCompiler for Excel
VBA Compiler for Excel is VBA protection software which converts the VBA code of Microsoft Excel workbooks and Excel add-ins into the binary code of a native Windows DLL file.
After compilation your VBA code cannot be copied or recovered and has the highest level of protection from piracy.
VBA Compiler is the best alternative to the VBA code protection approaches, such as VBA code obfuscation or standard MS Excel VBA project password protection.
The compiled workbook or Excel add-in file is left with the original file extension and behaves the same way as the original file.
Main benefits of the VBA Compiler usage
- Bulletproof VBA code protection. It is practically impossible to recover your VBA code from a Windows DLL.
- It is impossible to find or trace the VBA code after compilation because it has been moved to the Windows DLL.
- The original MS Excel workbook or add-in file extension is left the same as it was before compilation.
- To use the VBA Compiler you do not need to have knowledge of any other programming languages except VBA – Visual Basic for Application.
- VBA Compiler works with the copy of the original file, and keeps the original file unchanged.
- VBA code conversion during compilation happens automatically, which means it doesn’t require any of your participation in the process.
- You do not need to select which VBA functions you need to compile – all of the VBA code methods (procedures, functions and properties) will be compiled with one mouse click on the “Compile” button.
How the VBA Compiler works
The DoneEx VbaCompiler transforms source VBA code into C-code and, in the final stage, the C-language code is compiled into a native Windows DLL file.
During compilation, the transformation of the source VBA code goes through several stages:
Stage 1. VbaCompiler parses and analyses the source VBA code.
Stage 2. The product generates object code based on results of stage 1.
Stage 3. The product generates C-language code from the object code generated in stage 2.
Stage 4. The VbaCompiler runs a C-compiler to compile the C-language code (which was generated in Stage 3) into a Windows DLL.
Stage 5. The final stage of compilation – the VbaCompiler removes compiled VBA code from the file and generates connective VBA code where all compiled DLL functions are called instead of original VBA code.
Excerpt of the original VBA code before compilation
The same VBA code after compilation with VBA Compiler
As you can see that the content of the VBA functions is moved to the compiled DLL file and substituted by the calls of DLL functions.
Private functions are moved into the DLL and are not shown in VBA code after compilation.