4

我的小组目前使用 Excel 工作簿来跟踪员工的绩效。每个员工都有自己的工作簿,除了用户输入的数据外,它们是相同的。此工作簿上有自定义 VBA 公式,用于获取数据并生成分数基础。

我想做的是将这些公式移动到另一个工作簿,这样如果需要更改计算,可以在一个源文档中更改它,而不是数百个工作簿。

我正在设想类似...

='[Source Formula Workbook.xlsm]'!Formula_A(A1, A2, A3...)

...其中 A1、A2、A3 是用户工作簿中的单元格,这会从我假设的源工作簿中返回 Formula_A 的值。实现这一目标的正确方法是什么?

4

1 回答 1

7

执行此操作的常用方法是将 VBA 函数移动到 XLA/XLAM 插件并将插件存储在网络驱动器上。然后每个员工都需要使用 Excel 插件管理器(或安装程序)将联网的 XLA 添加到他们的 Excel 中。有关如何创建插件的信息,
请参见http://www.cpearson.com/excel/createaddin.aspx 。
您可以创建一个简单的安装程序 XLSM 文件,该文件使用 VBA 将 XLAM 添加到插件列表:

 With AddIns.Add(FileName:=MyNetworkAddInPath)
        .Installed = True
        End With
于 2013-10-23T07:43:01.443 回答