将宏作为外接程序分发给其他用户

tom*_*823 2 excel vba excel-vba excel-addins

我正在寻找一些技巧,以解决如何将宏分发给公司中的其他用户的问题。

我已经创建了一个特定的工作簿,其中包含许多类型的数据,例如日期,字符串和数字。每个用户都必须管理相同类型的数据,因此我们将此工作簿用作模板。数据存储在一个列中,在该列中我应用了条件格式和数据验证,以防止用户插入错误的值。该工作簿包含一些具有特定名称的工作表。该工作表的名称出现在代码中–为每个工作表进行一些特定的计算(基于工作表的名称)。

问题是,将来我可能会希望对代码进行一些更改,例如使我的宏更有效或实施一些必要的更改。

我已经在互联网上进行搜索以找到最佳的解决方案,我认为最好的方法是创建一个Excel加载项。但是我对此有一些疑问。

  1. 这真的是最好的解决方案吗?有人可以给我提示以更好的方式吗?

  2. 如果“加载项”是最好的,是否有办法仅将其添加到特定的工作簿(这是我的模板)中?

  3. 是否可以在有人打开特定工作簿时(使用Workbook_Open)安装加载项,并在工作簿关闭时(使用Workbook_BeforeClose)将其卸载。我已经在网上寻找答案,但是我不清楚这件事。如果可能,是否会影响关闭/打开工作簿的速度?

感谢您的帮助/建议!

bra*_*raX 5

将加载项放在网络驱动器上,并将其标记为只读。使用本地副本进行更新。确保每次复制时都将其设置为只读,并确保人们正在使用网络驱动器。

人们通常在安装外接程序时,会回答有关将其复制到本地驱动器的问题,这不是正确的答案。如果他们不小心单击YES,则需要编辑其注册表以删除本地引用。