Doneex Vbacompiler For Excel Site

1. What It Does


The Business Consequences

In summary, standard VBA protection is security theater. It creates a false sense of safety but offers no real defense. This is where the DoneEx VbaCompiler for Excel changes the game.


Part 6: Step-by-Step Guide – How to Compile Your First Project

Assuming you have purchased and installed DoneEx VbaCompiler for Excel (it integrates as an Excel add-in), follow these steps.

Prerequisites:

Step-by-Step:

  1. Open your source workbook – the one containing all VBA code, forms, and modules.
  2. Back up your original file. Compilation is irreversible for that copy.
  3. Click the DoneEx Ribbon Tab – A new ribbon group labeled “VbaCompiler” appears after installation.
  4. Click “Compiler Settings” – Choose options like:
    • DLL name and destination folder.
    • Enable trial period (e.g., expires after 30 days).
    • Add license key validation.
    • Obfuscate exported function names.
  5. Click “Compile Project” – The tool analyzes your VBA. Warnings may appear for unsupported features (rare, but e.g., ExecuteExcel4Macro is limited).
  6. Test the output – The compiler creates a new folder containing:
    • Your DLL (e.g., MyProject.dll)
    • A stub Excel file (e.g., MyProject_compiled.xlsm)
    • A log file.
  7. Open the stub file – Test every feature. Because calls now pass through the DLL, any error handling must be robust in your original code.
  8. Distribute – Send both the DLL and stub file to your users. They must keep the DLL in the same folder or register it (rarely needed).

Pro Tip: Use the “Embed DLL” option if available in your version. This embeds the DLL directly inside the stub workbook, so you only distribute a single file. DoneEx VbaCompiler for Excel


Case Study A: Financial Risk Consultancy

A London-based risk firm built a Monte Carlo simulation in VBA. Clients demanded the tool, but sharing the .xlsm meant exposing their proprietary probability models. After using DoneEx, they distributed a compiled version. A former client later hired a developer to reverse-engineer the DLL—after two weeks of failed attempts, they gave up. The firm’s IP remained intact.

The Problem with Standard VBA Protection

Let’s be honest: The standard “Lock Project for Viewing” feature is useless. There are dozens of tutorials on YouTube showing how to break that password in under 60 seconds. Encrypts & compiles VBA code into a Windows DLL

You have two problems:

  1. Intellectual Property Theft: Clients or competitors reverse-engineering your formulas.
  2. Tampering: Users accidentally (or intentionally) breaking the logic you painstakingly debugged.

32-Bit Only

VBA itself is a 32-bit technology. DoneEx compiles to 32-bit DLLs. On 64-bit Excel, you must run in compatibility mode or use the 32-bit version of Office. This is a Microsoft limitation, not a DoneEx flaw. The Business Consequences

How It Works

  1. Import: You open your Excel file (.xlsm, .xlsb, etc.) within the DoneEx VbaCompiler interface.
  2. Configure: You select which VBA modules and forms you want to compile. You can also define licensing parameters.
  3. Compile: The software compiles the VBA source code into a DLL file.
  4. Replace: The tool replaces the original VBA source code in the Excel file with external function calls that link to the new DLL.
  5. Distribution: You distribute both the modified Excel file and the DLL file to your users.

Source Code Exposure

Any user with moderate technical knowledge can:

  1. Open the Excel file with a hex editor.
  2. Use VBA password bypass scripts (freely available on GitHub).
  3. Extract, view, copy, or modify the complete source code.

Step 1: Analysis and Parsing

The DoneEx software scans your VBA project, analyzing all modules, forms, class structures, function dependencies, and global variables. It checks for syntax errors or unsupported VBA constructs (very rare, but the compiler is highly compatible with native VBA 6/7).