micpob

VBA Code Obfuscator (for Excel)

It has always been a challenge to preserve VBA code from being accessed and copied. There are a number of solutions you can find online, ranging from commercial softwares to hacky tutorials, but none will really works in blocking a motivated user from accessing your VBA codebase.
The truth is that it is pretty easy to gain access to any VBA codebase. What can be done to preserve the code is to make the job of understanding it as difficult as possible.

This software tries to do so by applying various obfuscation techniques to the code, like removing indents and comments, or substituting modules and functions names, as well as variables and other code components names, with unintelligible random strings.

Here is an example of how a codebase looks like before and after applying obfuscation:

BEFORE:


AFTER:


The software takes an Excel file as input and, after processing it, it outputs a new obfuscated version of the file. Externally the functioning of the file is preserved, but internally the VBA code is rendered to be basically unintelligible.

This is still an ongoing project, and while it works perfectly with a good amount of VBA files, in some cases the obfuscation process can compromise the correct functioning of the codebase.

If you choose to use this program, be aware that you will need to extensively test the obfuscated file to verify that it is still working as the original file.

 

Stack used:

VBA (Visual Basic for Applications)