【发布时间】:2018-05-22 17:24:12
【问题描述】:
我正在寻找一些技巧来解决向我公司的其他用户分发宏的问题。
我创建了一个特定的工作簿,其中包含许多不同类型的数据,例如日期、字符串和数字。每个用户都必须管理相同类型的数据,因此我们使用此工作簿作为模板。数据存储在我应用了条件格式和数据验证的列中,以防止用户插入错误的值。此工作簿包含几个具有特定名称的工作表。此工作表的名称出现在代码中 - 为每个工作表进行一些特定的计算(基于工作表的名称)。
问题在于,将来我可能想对代码进行一些更改,例如使我的宏更高效或实现一些必要的更改。
我在互联网上搜索了最佳解决方案,我认为最好的方法是创建 Excel 加载项。但我对此有一些疑问。
这真的是最好的解决方案吗?有人可以给我一个提示,让它以更好的方式实现吗?
如果插件是最好的,有没有办法只将它添加到特定的工作簿(这是我的模板)?
是否可以在有人打开特定工作簿时安装外接程序(使用 Workbook_Open)并在关闭工作簿时卸载它(使用 Workbook_BeforeClose)。我在网上找了答案,但这件事我不清楚。如果可能,会影响关闭/打开工作簿的速度吗?
感谢任何帮助/建议!
【问题讨论】:
-
为什么不在共享驱动器或共享点(如果有)上托管包含所有这些逻辑和 VBA 的工作簿。然后您可以更新逻辑并将其保存回那里,并且打开它的人都有最新版本。您可以创建一个加载项,并且该加载项可以做您想做的事情……但这听起来像是一条痛苦的道路。你最终会在同一条船上......你如何更新别人电脑上的插件?
-
将加载项放在网络驱动器上并将其标记为只读。使用本地副本进行更新。确保每次复制时都将其设置为只读,并确保人们正在使用网络驱动器。通常,当人们安装插件时,他们对将其复制到本地驱动器的问题回答“是”,这不是正确的答案。
-
@braX - 将此作为答案,这样我就可以投票了
标签: vba excel excel-addins