检测从VSTO插件运行的VBA宏

时间:2018-06-02 07:48:57

标签: c# excel vba excel-vba vsto

如果工作簿中的更改是由用户界面或VBA宏完成的,我有什么方法可以捕获?

当用户更改许多文件中的某些单元格时,我有VSTO addin做一些事情。 其中一些文件中包含VBA宏,这些宏可以修改相同的单元格。当动作源在VBA代码中时,我想忽略这种动作。

到目前为止我的想法: 1)事件 - 确实找不到合适的事件 2)系统堆栈 - 不知道我应该如何以及我应该寻找什么 3)动态VBA代码修改 - 添加标志 - 不优雅且不安全。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

无法检测谁在工作表上执行更改。如果隐藏了工作表(请参阅Visible属性)并触发了Change事件,则VBA或VSTO代码可以正常工作。