在Excel VBA中检查公共变量的值 - Locals Window Alternative

时间:2013-02-22 19:00:04

标签: excel debugging excel-vba global-variables variable-assignment vba

我一直在使用Locals窗口来检查过程级变量的赋值。

我最近更新了我的代码,以创建一组公共级变量,这些变量读取工作表中的某些输入,这些输入不会因项目而异。

当我试图检查这些变量时,我没有在Locals窗口中看到它们,毫无疑问,因为它们不是本地定义的变量!

是否有公共变量的Locals窗口的替代方案?如果没有,我该如何检查公共变量分配?

2 个答案:

答案 0 :(得分:17)

除了立即窗口(如另一个答案中所述),Watch窗口在这些情况下非常有用。您可以在查看菜单中激活它 - > 观看窗口enter image description here

您可以在这里定义:

  • 任何变量(例如您的公共变量)
  • 一个完整的术语,例如ActiveWorkbook.UsedRange.Address
  • 每只手表的范围
  • 当值改变或导致True时,即使是断点 - 这在调试时非常方便,因为它允许您快速条件断点而无需添加其他代码,例如如果您将监视设置为myVar=0并激活打破值,则值为真,代码将自动停止潜在错误“启动”的时刻

您可以在“添加监视”对话框中添加所有这些选项,您可以通过右键单击代码模块中的任何变量(或其他代码)或右键单击监视窗口来获取:

enter image description here

此外,您只需双击即可编辑列表中的任何监视项目。

非常方便的调试工具,尤其是与当地人立即窗口结合使用。

答案 1 :(得分:8)

使用立即窗口。在编码环境中按Ctrl + G转到立即窗口。 它允许在调试模式下获取和设置变量的值。 你需要加前缀?检查变量的值。  示例

 ?variableName   press enter to get the value
 variableName ="test" press enter to set the value