English

Problem: A VBA initialization failed error occurs when launching ArcGIS for Desktop 10.x

Description

A "VBA initialization failed" error occurs when launching ArcGIS for Desktop 10.1 or 10.2 (ArcMap or ArcCatalog). This issue persists even after uninstalling and reinstalling the VBA Compatibility runtime files.

Cause

Support for VBA (Visual Basic for Applications) has been deprecated in ArcGIS for Desktop 10.1, however users are still able to run existing VBA applications by installing the VBA Compatibility setup program. This installs only the necessary VBA runtime files required without the developer tools. Existing VBA applications may fail due to the following reasons:

• Incorrect VBA Compatibility version installed.

The VBA Compatibility setup program is not upgradable, thus if ArcGIS for Desktop is upgraded from 10.1 to 10.2, then the 10.1 VBA Compatibility runtime files must first be uninstalled before installing the 10.2 VBA Compatibility setup program.

• VBA Compatibility does not load on startup.

As part of an overall effort to improve performance and resource utilization, VBA is not automatically initialized when launching ArcGIS for Desktop. It only initializes when there is at least one VBA subroutine that handles an event; (for example, a document event or events associated with UI Controls.)

Solution or Workaround

  • Solution A

    1. Uninstall the 10.1 VBA Compatibility runtime files.

    2. Locate and Install the 10.2 VBA Compatibility setup program in the '\ArcGIS_VBA' folder from the installation media or download folder, or select the ArcGIS for Desktop VBA Compatibility link on the ArcGIS for Desktop startup menu.

    3. Once install, obtain the authorization file for VBA.

    Note:
    The VBA Compatibility setup from 10.2.1 is compatible with ArcGIS for Desktop 10.2.2

  • Solution B

    Warning:
    Warning: The given instructions include making changes to essential parts of your operating system. It is recommended that you backup your operating system and files, including the registry, before proceeding. Consult with a qualified computer systems professional, if necessary.

    Esri cannot guarantee results from incorrect modifications while following these instructions. Therefore, use caution and proceed at your own risk.


    Note:
    Administrative rights are required.

    Configure the ArcMap and ArcCatalog registry settings as per the instructions below.

    1. Launch the Registry Editor from the Desktop by typing in 'regedit.exe' in the Windows Start menu search box.

    2. Navigate to the following registry keys to make changes:

    • 64-bit Systems

    Code:
    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ESRI\Desktop10.1\ArcMap\Settings
    HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ESRI\Desktop10.1\ArcCatalog\Settings

    • 32-bit Systems

    Code:
    HKEY_LOCAL_MACHINE\SOFTWARE\ESRI\Desktop10.1\ArcMap\Settings
    HKEY_LOCAL_MACHINE\SOFTWARE\ESRI\Desktop10.1\ArcCatalog\Settings

    3. Change the Value data for PreloadVBA to '1' for both ArcMap and ArcCatalog.

    Note:
    If the PreloadVBA has a value of '0', VBA is not loaded (disabled) when ArcMap starts. If the PreloadVBA has a value of '1', VBA is loaded (enabled) when ArcMap starts.

    4. Close Registry Editor and restart the machine.

Related Information