Forum Discussion

Dave_at_B_B's avatar
Dave_at_B_B
Copper Contributor
Feb 24, 2026
Solved

EXCEL 360 COMPATABLE WITH 2010 XLSM FILES? THE MACROS IN VBA?

EXCEL 360 COMPATABLE WITH 2010 XLSM FILES? THE MACROS IN VBA?

I developed a complete workbook the excel 2010 for my business and was wondering if I can use the new version of excel?

Hoping that all the macros will work...

Thanks for any help !!

Dave

  • Excel 365 (Excel in Microsoft 365) is fully compatible with XLSM files from Excel 2010, and VBA macros typically work as expected, but there are some details to keep in mind.

    While generally compatible, a few factors can cause macros to behave differently:

     

    • VBA Project Error: When first opening your file in a new version of Office, you might see an error: "Opening the VBA Project in this file requires a component that is not currently installed." This often happens with very old files, but if your file is a standard .xlsm from 2010, you can typically resolve this by repairing your Office installation or ensuring all necessary components are installed .
    • Macros Disabled by Default: Newer versions of Excel have robust security settings. Your macros may be disabled upon opening the file. This doesn't mean they are incompatible, just that you need to enable them.
    • 64-bit vs. 32-bit: If you've moved to a 64-bit version of Microsoft 365 (common on new computers) and your old macros use Windows API (Declare) statements, they will need to be updated with PtrSafe attributes to work. This is a common point of failure.
    • New functions: Excel 365 has functions like XLOOKUP, FILTER, SEQUENCE, etc. — these won’t break your macros, but your 2010 macros won’t automatically take advantage of them unless you modify them.
    • Specific Code Breaks: Sometimes, a line of code that worked perfectly in 2010 might fail in 365 due to subtle changes in the object model. For example, one user found that PasteSpecial methods failed after upgrading , and another had issues with dynamic ListBox ranges . These usually require small code adjustments.
    • References and Libraries: If your VBA project uses "Early Binding" (e.g., referencing a specific library like Microsoft Outlook 14.0 Object Library), Excel 365 might update this reference to a newer version (e.g., 16.0). If the file is then sent back to a user with only Excel 2010, the macros will break . Using "Late Binding" (with CreateObject) is a more robust way to write code that works across versions .

     

     Note on Excel Online (Web Version)

    This is a critical distinction. If you plan to use Excel Online (the web browser version), your macros will not run . Excel Online can open an .xlsm file and preserve the VBA code, but it cannot execute it. To use your macros, you must open the file in the Excel desktop application.

     

     

    I hope this information has been helpful to you.

1 Reply

  • NikolinoDE's avatar
    NikolinoDE
    Platinum Contributor

    Excel 365 (Excel in Microsoft 365) is fully compatible with XLSM files from Excel 2010, and VBA macros typically work as expected, but there are some details to keep in mind.

    While generally compatible, a few factors can cause macros to behave differently:

     

    • VBA Project Error: When first opening your file in a new version of Office, you might see an error: "Opening the VBA Project in this file requires a component that is not currently installed." This often happens with very old files, but if your file is a standard .xlsm from 2010, you can typically resolve this by repairing your Office installation or ensuring all necessary components are installed .
    • Macros Disabled by Default: Newer versions of Excel have robust security settings. Your macros may be disabled upon opening the file. This doesn't mean they are incompatible, just that you need to enable them.
    • 64-bit vs. 32-bit: If you've moved to a 64-bit version of Microsoft 365 (common on new computers) and your old macros use Windows API (Declare) statements, they will need to be updated with PtrSafe attributes to work. This is a common point of failure.
    • New functions: Excel 365 has functions like XLOOKUP, FILTER, SEQUENCE, etc. — these won’t break your macros, but your 2010 macros won’t automatically take advantage of them unless you modify them.
    • Specific Code Breaks: Sometimes, a line of code that worked perfectly in 2010 might fail in 365 due to subtle changes in the object model. For example, one user found that PasteSpecial methods failed after upgrading , and another had issues with dynamic ListBox ranges . These usually require small code adjustments.
    • References and Libraries: If your VBA project uses "Early Binding" (e.g., referencing a specific library like Microsoft Outlook 14.0 Object Library), Excel 365 might update this reference to a newer version (e.g., 16.0). If the file is then sent back to a user with only Excel 2010, the macros will break . Using "Late Binding" (with CreateObject) is a more robust way to write code that works across versions .

     

     Note on Excel Online (Web Version)

    This is a critical distinction. If you plan to use Excel Online (the web browser version), your macros will not run . Excel Online can open an .xlsm file and preserve the VBA code, but it cannot execute it. To use your macros, you must open the file in the Excel desktop application.

     

     

    I hope this information has been helpful to you.