""Error &h800401f1 coinitialize has already been called" and "Insufficient Memory" in Excel VBA Form

Copper Contributor

I have an Excel spreadsheet with several VBA forms. Recently, one of the forms started showing an error. When I try to open it, the error message "Error &h800401f1 coinitialize has already been called" pops up, followed by another warning of "Insufficient Memory," and sometimes, I also encounter the "Catastrophic Failure" error. I have enough memory on my computer, so I'm unsure what might be causing these issues.

Troubleshooting steps I've already tried:

  1. Restarted my computer: I've attempted a computer restart to resolve any temporary memory issues or conflicts.

  2. Checked for updates: I verified if there were any available updates for Microsoft Office or Excel to address potential software-related problems.

  3. Verified VBA compatibility: I ensured that the VBA code is compatible with the version of Excel I'm using.

  4. Recreated the problematic forms: I have already tried recreating the VBA forms with issues, hoping to eliminate any potential form-specific problems.

Unfortunately, none of these steps has resolved the issue, and the problem persists. The error seems to be specific to this particular worksheet as other worksheets and VBA forms in the same Excel file are functioning correctly.

Is there any additional information or guidance on how to fix this issue? I would appreciate any help or insights into resolving this error so that I can continue using the VBA form without any disruptions.

Thank you in advance for your assistance.

1 Reply


The "Error &h800401f1 coinitialize has already been called" and "Insufficient Memory" errors in Excel VBA forms are often related to conflicts or issues with memory allocation and COM (Component Object Model) objects. These errors can be tricky to diagnose and resolve, but there are some additional steps you can try to troubleshoot and fix the problem:

  1. Check for Large Objects or Arrays: If your VBA code includes large objects or arrays, they could be consuming a significant amount of memory, leading to the "Insufficient Memory" error. Review your code and consider optimizing the usage of arrays and objects.
  2. Avoid Global Objects: Avoid using global objects or variables that retain large data structures, as they can consume memory throughout the entire Excel session.
  3. Release COM Objects: Ensure that you properly release any COM objects created in your VBA code. Failure to release COM objects can lead to memory leaks, which may cause the "Insufficient Memory" error. Use the Set keyword to set object variables to Nothing when they are no longer needed.
  4. Use Error Handling: Implement error handling in your VBA code to gracefully handle any unexpected errors. This can prevent catastrophic failures and help you understand the source of the problem.
  5. Check for Conflicts with Add-ins: Some Excel add-ins or third-party applications may conflict with your VBA code. Temporarily disable any add-ins and see if the issue persists.
  6. Compact and Repair Excel File: Try compacting and repairing the Excel file. To do this, open a blank Excel workbook, go to "File" > "Open," select your problematic workbook, and choose "Open and Repair."
  7. Split Large Worksheets: If your worksheet is very large, try splitting it into smaller sheets or workbooks. This can reduce memory usage and may resolve the issue.
  8. Update or Reinstall Excel: If the issue persists, consider updating your Excel installation to the latest version. Alternatively, you may try reinstalling Excel to ensure a fresh installation.
  9. Seek Expert Help: If none of the above steps resolve the issue, consider seeking help from Excel/VBA experts or Microsoft Support.


Please note that the specific cause of these errors can be challenging to identify, and trial-and-error may be required to find the exact solution. Additionally, backing up your Excel file before attempting any major changes is always a good practice to avoid data loss.

Always use caution when making changes to VBA code and ensure that you understand the potential impact of each change before implementing it.The text and steps were created with the help of AI.


My answers are voluntary and without guarantee!

Hope this will help you.