Strong and reliable VBA  copy protection


To provide strong and reliable VBA code copy protection, the DoneEx XCell Compiler uses 2 different approaches which are combined into one solution when you select all options of ‘VBA Protection’.

Unviewable VBA project.


Option ‘Unviewable VBA code’ blocks access to the Excel VBA project and disables VBA debug and tracing mode. After applying this option, VBA Project and VBA code will be unviewable and unavailable in compiled application. Any attempt to trace your VBA code will fail because VBA debug mode will be disabled.

VBA project unviewable, locked

Only this message will see anybody who tries to see your protected VBA code with the ‘Unviewable VBA code’.

Beside this the XCell Compiler VBA code copy protection approach contains 2 additional options which in combination with VBA Project protection makes your vba code unrecoverable.

VBA code modification options.


Two options, the ‘Code obfuscation’ and ‘Literals removing’, modify the VBA code in a way that remains VBA code workable but becomes crabbed and incomprehensible.

VBA protection options form

After applying ‘Literals removing’ option, the modified VBA code becomes tied to the XCell Compiler run-time library and will be workable in compiled application only. The removed literals will be loaded into computer memory only after passing all other security checks.

After applying all 3 options simultaneously you will get the strongest VBA code copy protection which has the following advantages:

  • The VBA code is unviewable and inaccessible from Excel VBA project.
  • The VBA debug mode is disabled, so it is impossible to trace the VBA code.
  • All comments and empty lines are removed from the VBA code.
  • The VBA code with removed literals will not work outside of compiled application.
  • The VBA code is modified so it is incomprehensible and unrecoverable.

Let’s consider piece of VBA code before and after obfuscation and literal removal.

Original VBA code before applying obfuscation and literal removal.

After applying the VBA code obfuscation and literal removal, the same piece of VBA code will look like image below.

Piece of VBA code with obfuscation and literal removal.

In order to protect VBA code and VBA project you just need to select all VBA protection options mentioned above and click ‘Compile’ button on XCell Compiler form.