Home |
Search |
Today's Posts |
|
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I am writing an aplpication in VBA in Excel 2007. When i used to call a macro
under excel 2003 I could use: Application.run "XlaFile.xla!'VBAProject.ModuleName.MacroName" However when i try to use this construction under Excel 2007 i get the following error message: "Cannot run the macro 'XLAFile.xlam!VBAProject.ModuleName.MacroName'. The macro may not be available in this workbook or all macros may be disabled." The Macro is standing in the Workbook_Open event of my xlsm file and is calling an addin with xlam extension. The xlam file is selected in the add-in list. Does anybody have an idea how i can solve the problem? Can i continue using the Excel2003 way under Excel2007 or is the call of an macro out of an add-in changed under Excel2007 |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
There shouldn't be any difference between 2003/2007 with what you are trying
to do. Looks like you are fully qualifying the path to the macro so all the more reason why it should work. Unless of course any of workbook, project (sure it's VBAPoroject!), module or macro names are not quite right. Try simply 'XLAFile.xlam!MacroName' If that fails rename the macro and try again. If/when working fully qualify again. Oh, and ensure of course that the xlam is really open, you should see it in project explorer. One more thing, depending on the name of the xlam you might need to embrace it with apostrophes. Regards, Peter T "CLDommel" wrote in message ... I am writing an aplpication in VBA in Excel 2007. When i used to call a macro under excel 2003 I could use: Application.run "XlaFile.xla!'VBAProject.ModuleName.MacroName" However when i try to use this construction under Excel 2007 i get the following error message: "Cannot run the macro 'XLAFile.xlam!VBAProject.ModuleName.MacroName'. The macro may not be available in this workbook or all macros may be disabled." The Macro is standing in the Workbook_Open event of my xlsm file and is calling an addin with xlam extension. The xlam file is selected in the add-in list. Does anybody have an idea how i can solve the problem? Can i continue using the Excel2003 way under Excel2007 or is the call of an macro out of an add-in changed under Excel2007 |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
I don't get it. I imported the module and it did not work, I recreated the
module and it did not work. I cursed at my pc, at MS and at everything that was in reach. I again recreated the module. And it works... Application.run "VBAProject.ModuleName.MacroName" does exactly what is it supposed to do. *CLDommel shakes head Why didn't I start cursing earlier, why did I wait three days before starting to curse? The only solution I can think of now that it does work is because my pc is afraid of me now :P Anyways Peter T thank you for your help eventhough all that was needed was to scare my computer :P "Peter T" wrote: There shouldn't be any difference between 2003/2007 with what you are trying to do. Looks like you are fully qualifying the path to the macro so all the more reason why it should work. Unless of course any of workbook, project (sure it's VBAPoroject!), module or macro names are not quite right. Try simply 'XLAFile.xlam!MacroName' If that fails rename the macro and try again. If/when working fully qualify again. Oh, and ensure of course that the xlam is really open, you should see it in project explorer. One more thing, depending on the name of the xlam you might need to embrace it with apostrophes. Regards, Peter T "CLDommel" wrote in message ... I am writing an aplpication in VBA in Excel 2007. When i used to call a macro under excel 2003 I could use: Application.run "XlaFile.xla!'VBAProject.ModuleName.MacroName" However when i try to use this construction under Excel 2007 i get the following error message: "Cannot run the macro 'XLAFile.xlam!VBAProject.ModuleName.MacroName'. The macro may not be available in this workbook or all macros may be disabled." The Macro is standing in the Workbook_Open event of my xlsm file and is calling an addin with xlam extension. The xlam file is selected in the add-in list. Does anybody have an idea how i can solve the problem? Can i continue using the Excel2003 way under Excel2007 or is the call of an macro out of an add-in changed under Excel2007 . |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
That does happen sometimes, maybe some sort of confused corruption in the
'compiled' state of the project, which is why one of the suggestions I gave was to rename the macro. Anyway glad cursing it a few times also got it working! Regards, Peter T "CLDommel" wrote in message ... I don't get it. I imported the module and it did not work, I recreated the module and it did not work. I cursed at my pc, at MS and at everything that was in reach. I again recreated the module. And it works... Application.run "VBAProject.ModuleName.MacroName" does exactly what is it supposed to do. *CLDommel shakes head Why didn't I start cursing earlier, why did I wait three days before starting to curse? The only solution I can think of now that it does work is because my pc is afraid of me now :P Anyways Peter T thank you for your help eventhough all that was needed was to scare my computer :P "Peter T" wrote: There shouldn't be any difference between 2003/2007 with what you are trying to do. Looks like you are fully qualifying the path to the macro so all the more reason why it should work. Unless of course any of workbook, project (sure it's VBAPoroject!), module or macro names are not quite right. Try simply 'XLAFile.xlam!MacroName' If that fails rename the macro and try again. If/when working fully qualify again. Oh, and ensure of course that the xlam is really open, you should see it in project explorer. One more thing, depending on the name of the xlam you might need to embrace it with apostrophes. Regards, Peter T "CLDommel" wrote in message ... I am writing an aplpication in VBA in Excel 2007. When i used to call a macro under excel 2003 I could use: Application.run "XlaFile.xla!'VBAProject.ModuleName.MacroName" However when i try to use this construction under Excel 2007 i get the following error message: "Cannot run the macro 'XLAFile.xlam!VBAProject.ModuleName.MacroName'. The macro may not be available in this workbook or all macros may be disabled." The Macro is standing in the Workbook_Open event of my xlsm file and is calling an addin with xlam extension. The xlam file is selected in the add-in list. Does anybody have an idea how i can solve the problem? Can i continue using the Excel2003 way under Excel2007 or is the call of an macro out of an add-in changed under Excel2007 . |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Macro not working with XLAM add-in | Excel Programming | |||
How do I save a password protected .xlsm file containing old macro | Excel Programming | |||
Run xlsm Macro in the middle of night | Excel Programming | |||
Cannot run the macro 'LOOKUP.XLAM!GetLookup | Excel Discussion (Misc queries) | |||
call to macro in xlam from macro in xlsb | Excel Programming |