我有一个由我的安装程序向 COM 注册的 Excel 自动化插件。通过注册 COM,我的加载项出现在(对于 Excel 2007)Excel 选项 > 加载项 > 管理 Excel 加载项转到... > 自动化列表中。用户仍必须导航到上面的对话框并选择我的加载项以启用它。
在向 COM 注册类型后,是否可以(可能通过注册表项)在我的安装程序类(或 VBA)中以编程方式启用我的自动加载项?
提前致谢 - 弗兰克
我有一个由我的安装程序向 COM 注册的 Excel 自动化插件。通过注册 COM,我的加载项出现在(对于 Excel 2007)Excel 选项 > 加载项 > 管理 Excel 加载项转到... > 自动化列表中。用户仍必须导航到上面的对话框并选择我的加载项以启用它。
在向 COM 注册类型后,是否可以(可能通过注册表项)在我的安装程序类(或 VBA)中以编程方式启用我的自动加载项?
提前致谢 - 弗兰克
我没有具体做过,但是我使用的参考资料对您的问题有这样的说法:
自动化加载项的加载方式与普通加载
.xla项相同,但使用 ProgID 而不是文件名,如以下代码所示:
Sub installAutomationAddIn()
AddIns.Add Filename:="Excel2007ProgRef.Simple"
AddIns("Excel2007ProgRef.Simple").Installed = True
End Sub
如果要为加载项创建安装例程,您可能需要直接写入注册表,以便将自动化加载项设置为已安装。为此,您需要创建以下注册表项(如果您使用了上述代码,则该注册表项已经存在)。
(In the Registry Key:)
HKEY_CURRENT_USER\SOftware\Microsoft\Office\12.0\Excel\Options
(Create the string value:)
Name = the first unused item in the series: Open, Open1, Open2, etc.
Value = /A "Excel2007ProgRef.Simple"