我有一个宏,我想在一些 XLSX 工作簿中使用,将它们称为文档目录和文档.xlsx。因为它们是 XSLX,所以它们不能包含任何宏定义。
我实现此目的的第一选择是使用个人宏工作簿在 XLSTART 目录中。但是,我更希望这不是全局的,也就是说,我不希望每个工作簿都访问这个宏,而是只希望文档目录和文档.xlsx访问宏。
我的下一次尝试是在插件中定义我的宏,并将其称为:
%APPDATA%\Microsoft\AddIns\MyMacros.xlam
我检查了“管理加载项”列表中的 MyMacros 项文档目录,然后发现它已经在那里了文档.xlsx。然后我取消选中了加载项列表中的 MyMacros 项,因为我不想将来的任何工作簿使用它,但当我尝试打开文档目录之后我收到错误信息:
无法运行宏“mymacro”。此宏可能不在此工作簿中可用,或者所有宏可能已被禁用。
原因是 MyMacros.xlam 不再位于加载项列表中。显然,对加载项列表的任何更改都是全局的,而不是特定工作簿的属性。
是否有人知道从部分(并非全部)XLSX 工作簿访问宏的其他方法?
答案1
您可以将宏保存在 .xlsm 文件中,然后将启用宏的文件以及 wb1.xlsx 和 wb2.xlsx 保存为工作区文件 (*.xlw)。然后您可以打开工作区文件,这将一次性打开所有三个工作簿。