你可以用excel来引用外部macros吗?

我有一个相当复杂的macros,我需要在多个不同的Excel表上运行,这个macros定期更新,每当需要改变它在每个单独的Excel表中更改它。 有没有办法让每个Excel文件引用一个macros?

例如,如果我有这样的层次结构:

DOCUMENTS: -xlsheet1.xls -xlsheet3.xls -xlsheet2.xls MACROS: -macro1.bas 

点击时每个工作表中都有一个运行macro1的button。

我会build议将该macros移动到您的个人文件或创build一个加载项


使用个人文件

主题 :从中央文件部署您的Excelmacros

链接 : http : //office.microsoft.com/en-us/excel-help/deploy-your-excel-macros-from-a-central-file-HA001087296.aspx

从上面的链接引用

你有没有想过在你所有的Excel工作表中使用这个非常方便的macros? 您可以。 本专栏介绍了如何将macros放在名为personal.xls的文件中,并在每次启动Excel时使其可用。

虽然它说它适用于Microsoft Excel 2002,但适用于所有的Excel版本。


创build一个加载项

主题创buildExcel加载项

链接 : http : //www.ozgrid.com/VBA/excel-add-in-create.htm

从上面的链接引用

用户经常会问我,分发macros的最好方法是什么? 我的回答毫无疑问是通过一个Excel加载项。 毕竟,这是加载项的用途。 对于那些不确定Excel加载项是什么的人来说,这只不过是一个已经被保存为加载项,文件>另存为\ Microsoft Excel加载项(* .xla)的Excel工作簿。 保存并重新打开后,工作簿将被隐藏,只能通过Visual Basic编辑器在“项目浏览器”中看到。 它不像Personal.xls那样隐藏,因为通过Windows> Unhide可以看到(并使其可见)。

个人文件适用于在单台计算机上有多个工作簿的macros。 在具有多个用户的联网环境中,您可以通过将单个工作簿与您的macros组合在一起来模拟个人文件,并在启动时编写所有其他工作簿以打开并隐藏此工作簿。