Excel Macro Subscript Out of Range [Fix Runtime Error 9]

How to Fix Runtime Error 9 Subscript Out of Range in Excel? Runtime errors typically happen in Microsoft Excel when the necessary files are missing. These runtime issues are the most complicated and diverse to fix. However, one such problem that users have lately encountered and reported is “Runtime error ‘9’: Subscript out of range” when running VBA code in MS Excel.

Therefore, read this post to the conclusion if you receive the same error message. Here, you will discover the typical causes of this error and effective solutions for runtime error 9: subscript out of range in Excel.

What is Runtime Error 9 Subscript out of Range?

Runtime Error 9: Subscript Out of Range occurs when VBA code tries to access an array element or a worksheet that does not exist or is out of the specified range. This error message can irritate users as it disrupts the smooth execution of their VBA macros.

Excel Macro Subscript Out of Range

Why Does Excel say “Runtime Error 9: Subscript out of Range”?

There can be several reasons behind the occurrence of runtime Error 9 in Excel. Here are some common causes:

1) Incorrect Array Range

The VBA code attempts to access an array element outside its defined range. It can happen if the array size is not correctly initialized or the wrong index is used.

2) Invalid Worksheet Name

The VBA code refers to a worksheet that either doesn’t exist or has been renamed. It can lead to a Subscript Out of Range error.

3) Macro Security Settings

Excel has built-in security settings that control the execution of macros. If the security settings are set to a high level, specific macros may not be allowed to run, causing runtime errors.

4) Corrupted Excel File

In some cases, the Excel file itself may be corrupted or damaged, leading to runtime errors when executing VBA code.

Now that we better understand the error and its common causes, let’s explore how to fix Runtime Error 9: Subscript Out of Range in Excel.

Also See: How to Fix Excel Not Recognizing Numbers in Cells

Ways to fix Runtime Error 9 Subscript out of Range in Excel?

1. Check the Range of the Array

If the error occurs due to an array being out of range, ensure that the array size is adequately initialized and that the helpful index is within the range. Review the code and check if any dynamic changes to the array size or index values are causing the error. Correcting the array range can often resolve this issue.

2. Verify the Worksheet Name in the VBA Code

If an invalid worksheet name causes the error, double-check the worksheet references in your VBA code. Ensure that the worksheet name matches the actual name in the Excel workbook. If you have renamed or deleted a worksheet, update the VBA code accordingly to reflect the changes.

3. Change the Security Settings of Macro

If the runtime error occurs due to macro security settings, you can adjust the settings to allow the execution of macros. Follow these steps:

  • Open Excel and go to “File” > “Options.”
  • Select “Trust Center” from the left-hand menu in the Options dialogue box.
  • Click on the “Trust Center Settings” button.

Trust Center

  • Select “Macro Settings” from the left-hand menu in the Trust Centre dialogue box.
  • Choose the desired security level, such as “Enable all macros” or “Disable all macros with notification.”

Macro Enable

  • Click “OK” to save the changes.

By adjusting the macro security settings, you can enable the execution of macros and potentially resolve the runtime error.

4. Repair the MS Excel File

If the Excel file is corrupted or damaged, it can cause runtime errors. To fix this issue, you can try repairing the MS Excel file. Here’s how:

  • Open Excel and go to “File” > “Open.”

Browse Excel Open FIle

  • Navigate to the location of the corrupted file.
  • Instead of directly opening the file, select the file and click on the arrow next to the “Open” button.
  • Click “Open and Repair” from the dropdown menu.

Open Repair Excel File

  • Follow the on-screen instructions to repair the file.

By repairing the corrupted Excel file, you may be able to eliminate the runtime error.

5. Best Software to fix Corrupted Excel Document

In some cases, manual methods may not be sufficient to fix a severely corrupted Excel file. Using specialized software like Stellar Repair for Excel can be a reliable solution in such situations. Stellar Repair for Excel is an advanced tool designed to repair and recover corrupt or damaged Excel files.

It can effectively fix various Excel errors, including Runtime Error 9: Subscript Out of Range. The software supports Excel files of different versions and provides a user-friendly interface to ensure smooth file recovery.


Runtime Error 9: Subscript Out of Range in Excel can be caused by various factors, such as incorrect array range, invalid worksheet names, macro security settings, or corrupted Excel files. By following the troubleshooting steps mentioned in the given article, you can effectively resolve this error and ensure the smooth execution of your VBA code in Excel.

Scroll to Top