C# 检测从VSTO加载项运行的VBA宏
如果工作簿中的更改是由用户界面或VBA宏完成的,是否有任何方法可以捕获 当用户更改许多文件中的某些单元格时,我不得不添加一些内容。 某些文件中包含VBA宏,这些宏可以修改相同的单元格。当操作源在VBA代码中时,我希望忽略此类操作 到目前为止,我的想法是: 1) 事件-没有找到正确的事件 2) 系统堆栈-不知道我应该如何以及寻找什么 3) 动态VBA代码修改-添加标志-不优雅且不安全C# 检测从VSTO加载项运行的VBA宏,c#,vba,excel,vsto,C#,Vba,Excel,Vsto,如果工作簿中的更改是由用户界面或VBA宏完成的,是否有任何方法可以捕获 当用户更改许多文件中的某些单元格时,我不得不添加一些内容。 某些文件中包含VBA宏,这些宏可以修改相同的单元格。当操作源在VBA代码中时,我希望忽略此类操作 到目前为止,我的想法是: 1) 事件-没有找到正确的事件 2) 系统堆栈-不知道我应该如何以及寻找什么 3) 动态VBA代码修改-添加标志-不优雅且不安全 感谢您的帮助无法检测谁在工作表上执行更改。如果工作表被隐藏(请参见属性)并且触发了更改事件,则VBA或VSTO代码
感谢您的帮助无法检测谁在工作表上执行更改。如果工作表被隐藏(请参见属性)并且触发了更改事件,则VBA或VSTO代码将起作用。您无法知道单元格是否由用户或VBA代码更改。如果要忽略响应VBA代码而引发的
工作表\u更改
,则必须在让宏运行之前设置EnableEvents=False
,但仅此一项就可能破坏宏。