Protect VBA Code

Microsoft's Visual Basic for Applications (VBA) is the standard language for writing programs to automate functions and tasks in Microsoft Office. Understand how to protect VBA code so others can't sabotage or steal your macros.

Steps

Secure VBA Code with a Password

  1. Open the Visual Basic Editor, usually found under "Macro" in the "Tools" menu. (In Access, you may need to be in the database window to reach the editor, depending on your computer set-up.)
    • Select "Project Properties" in the "Tool" menu within the Visual Basic Editor.
  2. Go to the "Protection" tab.
  3. Select the "Lock Project for Viewing" check box. If you don't check this box, you won't hide your code.
  4. Create and confirm your desired password in the indicated boxes.
  5. Save, close, and reopen your workbook for the protection to take effect. (In Microsoft Excel 2007 and later, you may need to save as an XLSM file for your code to work.)

Hide VBA Code in a Read-Only File with Access 2007

  1. Go to the "Database Tools" tab.
  2. Find the "Database Tools" group.
  3. Select "Make ACCDE."
  4. Save the ACCDE file with a separate name from the original file. That ACCDE file is a read-only file type, so you need to keep the original file, too, to be able to make any changes.

Protect Your VBA Code by Making an Add-In

  1. Create an empty Office file of the type that will use your code. (For example, if your code works with MS Excel, create an Excel file.)
  2. Copy your VBA code into the Visual Basic Editor of that empty file.
  3. Open the "Macros" window, usually stored under "Tools."
  4. Test your code again, which debugs it.
  5. Remove anything added to the empty file by your test.
  6. Add a description to the macro that will run in your add-in. (You may need to select macro "Options" to be able to insert the description.)
  7. Compile your code. (In the Visual Basic Editor, look under the "Debug" menu and select "Compile VBA Project.")
  8. Save a copy of the file in a standard file type.
  9. Go to "Tools" in the Visual Basic Editor, then select "Project Properties."
  10. Select the "Protection" tab.
  11. Activate the "Lock Project for Viewing" check box. (You may also need to set a password, depending on the specific file type you're working with and your settings for MS Office and your computer.)
  12. Open the "Save As�" or "Save a Copy" dialog box.
  13. Access the drop-down menu and change the file type to the appropriate type of add-in.
    • Save a Microsoft Word add-in as a DOT file, a document template. (If you want the add-in to run when you start Word, save it in the Word Startup folder.)
    • Save a Microsoft Excel add-in as an XLA file.
    • Save a Microsoft Access add-in as a MDE file, which will protect the VBA code. (Microsoft Access add-ins can also be saved as MDA files, but this doesn't hide the code.)
    • Save a Microsoft PowerPoint add-in as a PPA file which will hide the VBA code and leave it unable for anyone other than you to access it or edit it.
  14. Quit and reopen Microsoft Office. Your add-ins should now be usable.

Tips

  • If you can't find the VBA Editor or Add-In Manager, make sure it is installed on your computer. If not, you'll probably need to access your Office suite installation disks to install the necessary programs.
  • Your specific settings and setup for Microsoft Office can affect where different functions are located in each program. If you can't find a function, try running a quick "Help" search for the function name.

Sources and Citations