Installation (VBA) (Setup edition)

Top  Previous  Next

To install MZ-Tools 8.0 for VBA (Setup edition) follow these steps:

  • Go to the Download page on the web site and download the desired setup MZ-Tools 8.0 for VBA.
  • Run the setup program MZTools8VBASetup.exe taking into account this information:
    • The setup doesn't require admin rights to be installed and, unless you are running Microsoft Office with admin rights, it should be installed without admin rights (that is, do not click "Run as administrator" to run the setup).
    • MZ-Tools 8.0 for VBA is registered only for the user account running the setup, not for all users. So, do not use a different user account to run the setup. This is a limitation imposed by Microsoft, not by MZ-Tools 8.0 for VBA (see explanation below). But since any user without admin rights can run the setup, this restriction should not be a problem in most cases (unless you are in an organization with restricted execution of setups, read below for workarounds).
  • Follow the instructions on the screen.
  • For advanced installation scenarios and troubleshooting read the sections below.

 

To configure the team options if you are working inside a team:

  • If you are the team leader, configure the team options of MZ-Tools and then move the "TeamOptions" subfolder of the installation folder to some shared network folder.
  • If you aren't the team leader, ask him / her the location of the team options folder (it should be in a shared network folder) and point to it as explained in the Customizing MZ-Tools section.

 

To register MZ-Tools 8.0 after the installation with the license file, see Registration (licensing).
 
 
Advanced installation scenarios

For restricted environments, massive installations, etc. take into account this information:

  • MZ-Tools 8.0 for VBA is installed to this per-user folder: "C:\Users\<user>\AppData\Local\MZTools Software\MZTools8VBA".
  • MZ-Tools 8.0 for VBA, as any add-in for the VBA editor, needs two kinds of registration:
    • Registration as COM (ActiveX) component: add-ins for the VBA editor are ActiveX DLLs. When you run the setup without admin rights (which is the default procedure that you should follow, as explained above), the setup performs per-user COM-registration (which doesn't require admin rights) instead of the usual per-machine (all-users) COM-registration (which would require admin rights).
    • Registration as add-in for the VBA editor. The previous COM-registration is not enough, the VBA editor must know which registered ActiveX DLLs are add-ins. It recognizes registered add-ins reading entries under these Registry keys:
      • For Microsoft Office 32-bit: HKEY_CURRENT_USER\Software\Microsoft\VBA\VBE\6.0\AddIns
      • For Microsoft Office 64-bit: HKEY_CURRENT_USER\Software\Microsoft\VBA\VBE\6.0\AddIns64

Each key must have the "Description", "FriendlyName" and "LoadBehavior" names, types and data as shown in this image:

Regedit

Notice that those keys must be under HKEY_CURRENT_USER: the VBA editor doesn't read equivalent keys under HKEY_LOCAL_MACHINE if they would be created. This per-user only registration (not per-machine for all users) of VBA add-ins was a Microsoft's decision in the 90's, and for this reason the setup must be run by the user account who is going to use the add-in.

  • If you are a developer working in a restricted environment where your IT department doesn't allow you to install software running setups, even setups that don't require admin rights, you have three possible workarounds:
    • Convince your IT department to get a temporary permission of a few seconds for you to run the setup once with your user account. Notice that IT department doesn't have to grant you admin rights, because the setup doesn't require admin rights, you need only to be allowed to run non-admin setups.
    • Make your IT department to run the setup with their user account with admin rights (using "Run as administrator"). The setup recognizes when it is running with admin rights ("Run as administrator") and interprets it as a desire to perform a per-machine COM-registration instead of a per-user COM-registration. So you only would need to use the regedit.exe tool to create by hand the required Registry entries explained above to perform the add-in registration for the VBA editor.
    • Use the MZ-Tools 8.0 for VBA (Portable edition) instead. This edition doesn't use a setup but it still requires to run a small utility that writes entries under HKEY_CURRENT_USER to perform both the per-user COM-registration and the per-user VBA add-in registration explained above. Most applications write settings under HKEY_CURRENT_USER, so this portable edition should work.
  • If you work for an IT department and want to install the setup automatically for end-users without prompts (for massive deployments), create some script that runs the setup under each end-user account (as explained above, VBA add-ins need to be registered under the HKEY_CURRENT_USER key) and use the /VERYSILENT command-line switch of the setup. In this case, no entry is created in Control Panel, Programs and features, to prevent the uninstallation by the user through that way. The setup of MZ-Tools 8.0 for VBA has been created with InnoSetup, a popular installer. You can get its command-line switches here. Remember again that MZ-Tools 8.0 for VBA (Setup edition) is installed only for the user running the setup, not for all users.
     

Troubleshooting

To diagnose problems with the installation you may find useful this information:

  • If MZ-Tools 8.0 for VBA "is not shown" or "doesn't appear" when you open the VBA editor of a Microsoft Office application:
    • Go to the "Add-Ins" > "Add-In Manager" of the VBA editor and check whether "MZ-Tools 8.0 - VBA" appears on the list or not:
      • If it appears on the list, check the checkboxes "Loaded/Unloaded" and "Load on Startup". The setup does this automatically so this case should be rare.
      • If it doesn't appear on the list obviously it cannot be loaded. In this case continue to the next point.

AddInManager

    • If "MZ-Tools 8.0 - VBA" doesn't appear in the Add-In Manager, use the regedit.exe tool to check if "MZTools8VBA" is registered as add-in for the VBA editor for your user account:
      • For Microsoft Office 32-bit: HKEY_CURRENT_USER\Software\Microsoft\VBA\VBE\6.0\AddIns\MZTools8VBA
      • For Microsoft Office 64-bit: HKEY_CURRENT_USER\Software\Microsoft\VBA\VBE\6.0\AddIns64\MZTools8VBA

Regedit

      • If those entries don't exist then run the setup again, ensuring that you have downloaded the correct setup for VBA, named MZTools8VBASetup.exe and not MZTools8VB6Setup.exe or MZTools8VB5Setup.exe (it happens sometimes...)
      • If those entries exist then check if MZ-Tools 8.0 for VBA is loaded by the VBA editor of other Microsoft Office applications (Access, Word, Excel, PowerPoint, Outlook, etc.), to see if the problem is specific to the VBA editor of one application, or it happens with the VBA editor of all applications:
        • If the problem happens with the VBA editor of all applications, contact Support.
        • If the problem is specific to the VBA editor of some Microsoft Office application, check that MZ-Tools 8.0 for VBA has not been disabled by that application. For example, for Microsoft Access, visit the "Add-ins" > "Disabled Items" section (which applies to both add-ins for Microsoft Access and add-ins for its VBA editor).
          • If MZ-Tools 8.0 for VBA is disabled then click the "Enable" button.
          • If MZ-Tools 8.0 for VBA doesn't appear on the list of disabled items, contact Support.

AccessAddins
 

  • If you get the error "MZ Tools 8.0 for VBA could not be loaded" when you open the VBA editor, likely it is because your user account is an administrator user account and it is running the Microsoft Office application with admin rights (in "elevated" mode, using "Run as administrator", which is not required in most cases) instead of in the default standard ("non-elevated") mode. It happens that applications running with admin rights (in "elevated" mode) cannot use COM add-ins that were registered using per-user COM registration instead of per-machine COM registration. Notice that on Windows Vista and higher with the User Account Control (UAC) feature activated, administrator user accounts don't run applications with admin rights by default, you need to run them "as administrator" and you get a "consent" prompt. To solve this issue do not run the Microsoft Office application with admin rights in "elevated" mode:
    • Do not use the "Run as administrator" context menu entry to launch the Microsoft Office application.
    • Ensure that the "Run this program as an administrator" checkbox of the Compatibility tab of the properties window of the Microsoft Office application shortcut or executable is not checked.
    • If you know what you are doing and your administrator user account really needs to launch the Microsoft Office application with admin rights in "elevated" mode, then:
      • Uninstall MZ-Tools 8.0 for VBA (which was installed without admin rights and used per-user COM-registration).
      • Install it again, but this time with admin rights in "elevated" mode. To do this, right-click the MZTools8VBASetup.exe file and click the "Run as administrator" context menu entry, which should show an "elevation" consent prompt. When you run the setup with admin rights in "elevated" mode, per-machine COM-registration is used, instead of per-user COM-registration, and it can be used from a Microsoft Office application that for some reason must be run with admin rights in "elevated" mode.