我有一个插件,可以在Excel电子表格中填充数组。如果提交的参数错误,则会在一个单元格中写入错误消息。
不幸的是,当插件显示错误消息时,Excel会有效地禁用该插件。因此,下次重新打开电子表格时,我无法刷新以前正确填充的数组 - 所有单元格都填充了#NAME?。此外,我无法通过插件中的任何函数定义要填充的新数组 - 插件中定义的整个函数类别不可用。
然而,当我去File - >选项 - >加载项,该插件仍然列为活动状态。
我仍然可以通过加载项取消注册插件 - >管理Excel加载项,然后再次注册。这恢复了功能。
有没有办法确保Excel不会自动禁用我的插件?
答案 0 :(得分:1)
如果插件抛出异常(C ++异常,C#异常或SEH异常),Excel将禁用该插件。
不要抛出异常。使用记录的方法返回错误值。
你没有说什么类型的插件 - 每个方法都有所不同。