c# - 如何在调试时刷新 Excel

标签 c# vb.net visual-studio excel debugging

如果我正在调试(在本例中是 Excel 调用的 Visual Studio 程序集)并且代码更新了 Excel 工作表,我如何让 Excel 在调试器中暂停时重绘当前工作表/窗口?

最佳答案

如果您正在调用 Excel 跨进程(例如通过自动化),那么 Excel 应该会在调用时自动显示任何更改,除非您设置了 xlApp.ScreenUpdating = False。如果是这种情况,那么如果在设置断点时以 Debug模式运行,则最好使用条件不设置 xlApp.ScreenUpdating = False。否则,您必须从其他进程中设置 xlApp.ScreenUpdating = True(使用 GetObject() 或类似的方式,以便您可以获取相同的 Excel 应用程序实例)。

但是,如果您的代码在进程中被调用(例如,如果您的代码作为加载项运行),那么您的代码将通过热键组合、CommandBar 按钮、功能区控件回调或喜欢。在这种情况下,Excel 是单线程的,您的代码将停止所有 Excel 的执行。在这种情况下,我唯一能想到的就是使用“编辑并继续”,添加 xlApp.ScreenUpdating = True 行,然后进入下一行。 (不过记得之后删除这一行!)

如果您没有使用 xlApp.ScreenUpdating = False,那么我真的不知道您的问题是什么,您必须提供有关代码的更多详细信息...

关于c# - 如何在调试时刷新 Excel,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/239609/

相关文章:

c# - 在 @Html.ActionLink 中使用 Bootstrap 徽章

vb.net - 套接字客户端和服务器不工作

asp.net - VB.NET 跟踪变量

javascript msgbox if 语句

c# - 检索具有相同 HotelID 的数据

c# - 在 Visual Studio 中测试单独成功,在一组中失败

visual-studio - Visual Studio - 如何在运行宏时禁用自动格式/更正?

c# - 在电子邮件正文中发送 RTF 文件

c# - C# 中的内联 C 和编译?

c# - Google.GData.Spreadsheets 上出现 404 错误