gpt4 book ai didi

vba - 使用 VBA 更新 xlam 加载项

转载 作者:行者123 更新时间:2023-12-02 11:21:17 25 4
gpt4 key购买 nike

Sub Install_Addin()

Dim AI as excel.addin
Set AI = Application.Addins.Add("C:\Add_In.xlam")
AI.Installed = True
Application.Addins("Add_in").Installed = True

End Sub

上面是我从 Chip Pearson 那里获得的用于安装 Excel 插件的代码。这段代码第一次运行良好。我的外接程序有一个控制按钮(我在编写外接程序时修改了 xml),因此,当安装外接程序(使用上面的代码)时,我的 Excel 功能区上会自动出现一个按钮,然后我可以使用我的加载项。

问题是当我尝试重新安装我的加载项时。当我更新加载项的代码并尝试使用上述代码重新安装时,出现此错误 ----

runtime error '1004'
Unable to copy add-in to library

出现这种情况是因为加载项在重新安装之前未正确卸载。我已经放弃在网上搜索使用 VBA 代码卸载加载项的方法。我找不到任何简单的解决方案。

目前卸载加载项的唯一方法是手动执行。首先,我从 Microsoft Add ins 文件夹中删除该加载项。然后我打开 Excel,它给我一条警告消息,指出它找不到该加载项。然后我转到加载项管理器并单击我的加载项,然后单击“开始”。然后在加载项列表中,我勾选了我的加载项,然后 Excel 显示“加载项不存在。从列表中删除吗?”然后加载项最终被删除。

只有像这样手动删除加载项后,我才能使用上述代码重新安装我的加载项。现在这真的很麻烦,尤其是当我想将加载项分发给其他人时。必须有一种更简单的方法来更新加载项,而无需先手动删除它。

请不要提供随机答案或您认为对此问题“可能”正确的答案。另外,请不要告诉我“尝试这个那个”。只有当你知道正确的解决方案时,才告诉我。我已经尝试了很多事情但没有成功。 :)

非常感谢。

最佳答案

如果您要更改 XLAM 中的代码但保持其名称和位置相同,则无需将其作为插件重新安装。

如果您想要卸载现有插件,以便可以安装具有不同名称的新版本,您可以将现有插件的 Installed 属性设置为 False,但这会将现有插件保留在可用但未安装的列表中插件。

如果您想更改插件的名称或位置,更好的解决方案是使用 stub 插件加载器来简化版本恢复和加载问题。您可以从我的网站 http://www.decisionmodels.com/downloads.htm 下载开源工作示例。

关于vba - 使用 VBA 更新 xlam 加载项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21039223/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com