VBA程序的调试:设置断点、单步跟踪、设置监视窗

  Acces的VBE编程环境提供了完整的一套调试工具和调试方法。熟练掌握好这些调试工具和调试方法的使用,可以快速、准确地找到问题所在,不断修改,加以完善。
  一、“断点”概念
  所谓“断点”就是在过程的某个特定语句上设置一个位置点以中断程序的执行。“断点”的设置和使用贯穿在程序调试运行的整个过程。
  “断点”设置和取消有4种方法:
  (1)选择语句行,单击“调试”工具栏中的“切换断点”可以设置和取消“断点”。
  (2)选择语句行,单击“调试”菜单中的“切换断点”项可以设置和取消“断点”。
  (3)选择语句行,按下键盘“F9”键可以设置和取消“断点”。
  (4)选择语句行,鼠标光标移至行首点击可以设置和取消“断点”。
  在VBE环境里,设置好的“断点”行是以“酱色”亮红显示,如图8.25所示。

  二、调试工具的使用
  VBE环境中,右键点击菜单空白位置,弹出快捷菜单,选中“调试”选项使其前边“?”出现,这时就会打开“调试”工具栏.如图8.24所示。

  调试工具栏中主要按钮功能说明见表8.11所示。

  调试工具一般是与“断点”配合使用进行各种调试操作。下面简要介绍“调试”工具栏上的一些主要调试工具的用法。
  1.中断工具钮
  用于暂时中断程序运行,进行分析。此时,在程序中序中断位置会产生一个“黄色”亮杠,如图8.25所示。
  2.本地窗口工具钮
  用于打开“本地窗口”窗口,如图8.26所示。其内部自动显示出所有在当前过程中的变量声明及变量值,从中可以观察各种数据信息。

  本地窗口打开后,列表中的第一项内容是一个特殊的模块变量。对于类模块,定义为Me。Me是对当前模块定义的当前类实例的引用。由于它是对象引用,因而可以展开显示当前实例的全部属性和数据成员。
  实际上,Me类模块变狱还广泛用于VBA程序设计中,它不需要专门定义,可以直接使用。一般编写类模块时,对当前模块的实例引用就可以使用Me关键字。
  3.立即窗口工具钮
  用于打开“立即窗口”窗口,如图8.27所示。在中断模式下,立即窗口中可以安排一些调试语句,而这些语句是根据显示在立即窗口区域的内容或范围来执行的。如果输入Print variablename,则输出的就是局域变量的值。

  4.监视窗口工具钮
  用于打开“监视窗口,窗口,如图8.28所示。在中断模式下,右键点击监视窗口区域会弹出如图所示的快捷菜单,选择“编辑监视…”或“添加监视…”项,则打开“编辑(或添加)窗口”,在表达式位置进行监视表达式的修改或添加,见图8.29所示,选择“删除监视…”项则会删除存在的监视表达式。
  通过在监视窗口增添监视表达式的方法,程序可以动态了解一些变量或表达式的值的变化
  情况,进而对代码的正确与否有清楚的判断。
  5.快速监视工具钮
  在中断模式下,先在程序代码区选定某个变量或表达式,然后点击“快速监视”工具钮,则打开“快速监视”窗口,如图8.30所示,从中可以快速观察到该变量或表达式的当前值,达到了快速监视的效果。如果需要,还可以点击“添加”按钮,将该变量或表达式添加到随后打开的“监视窗口”窗口中,以做进一步分析。

出处:http://www.educity.cn/ncre/ncrefx/201011301007201217.htm

VBA程序的调试的更多相关文章

  1. Docker容器环境下ASP.NET Core Web API应用程序的调试

    本文主要介绍通过Visual Studio 2015 Tools for Docker – Preview插件,在Docker容器环境下,对ASP.NET Core Web API应用程序进行调试.在 ...

  2. MATLAB调用C程序、调试和LDPC译码

    MATLAB是一个很好用的工具.利用MATLAB脚本进行科学计算也特别方便快捷.但是代码存在较多循环时,MATLAB运行速度极慢.如果不想放弃MATLAB中大量方便使用的库,又希望代码能迅速快捷的运行 ...

  3. [转] python程序的调试方法

    qi09 原文 python程序的调试方法 本文讨论在没有方便的IDE工具可用的情况下,使用pdb调试python程序 源码例子 例如,有模拟税收计算的程序: #!/usr/bin/python de ...

  4. Delphi应用程序的调试(十)调试器选项(在IDE中不要使用异常)

    可在两个级别上设置调试选项:工程级和环境级.在前面的讲解中讲解了工程级调试选项,通过主菜单[Project | Options…]打开如下对话框: 可在Debugger Options对话框中设置全局 ...

  5. 无法在web服务器上启动调试,服务器不支持对ASP.NET 或ATL Server应用程序进行调试。

    无法在web服务器上启动调试,服务器不支持对ASP.NET 或ATL Server应用程序进行调试. a>.DCOM配置里的属性灰色不可用的解决方法,   1>.管理工具->组件服务 ...

  6. 【经验随笔】Java程序远程调试定位特定运行环境上出现的问题

    Java后台程序远程调试 第一步:在JVM的启动参数中增加-Xdebug -Xrunjdwp:transport=dt_socket,address=6688,server=y,suspend=n 第 ...

  7. Civil 3D 2017本地化中VBA程序移植到2018版中

    中国本地化包简直就是一块鸡肋, 但对于某些朋友来说还真离不了: 可惜中国本地化包的推出一直滞后, 在最新版软件出来后1年多, 本地化还不一定能够出来, 即使出来了, 也只能是购买了速博服务的用户才能得 ...

  8. Delphi应用程序的调试(十)调试器选项

    可在两个级别上设置调试选项:工程级和环境级.在前面的讲解中讲解了工程级调试选项,通过主菜单[Project | Options…]打开如下对话框: 可在Debugger Options对话框中设置全局 ...

  9. Delphi应用程序的调试(五)其他调试工具

    Delphi应用程序的调试(五)其他调试工具 Delphi7中提供了一些附加调试工具来帮助用户检查程序错误.从性能上讲,其中一些工具属于高级调试工具.尽管高级调试工具不像其他工具那样常用,但对于经验丰 ...

随机推荐

  1. 20145201《Java程序设计》第7周学习总结

    20145201 <Java程序设计>第七周学习总结 教材学习内容总结 本周学习了课本第十二.十三章内容,即Lambda.时间与日期 第十二章 Lambda 12.1 认识Lambda语法 ...

  2. SpringBoot中使用hikariCP

    本篇文章主要实现SpringBoot中使用hikariCP: 一 .使用工具 1. JDK1.8 2. springToolSuit(STS) 3. maven 二.创建项目 1.首先创建一个Spri ...

  3. jquery在线引用

    转载:http://www.cnblogs.com/lzx-1024/p/7716615.html jquery-3.1.1(最新)官网jquery压缩版引用地址:<script src=&qu ...

  4. Mybatis中接口和对应的mapper文件位置配置深入剖析

    首先要说明的问题是,Mybatis中接口和对应的mapper文件不一定要放在同一个包下,放在一起的目的是为了Mybatis进行自动扫描,并且要注意此时java接口的名称和mapper文件的名称要相同, ...

  5. bootstrap重置校验方法

    $(function (){ $("select").change(function(){ $('#DepartForm').bootstrapValidator('resetFo ...

  6. 编程练习赛11B 物品价值(装压dp)

    题意:每个物品有m(m<=10)种属性和一个价格,你有n种物品从中任意选择一些物品,让每种属性恰好有奇数个物品拥有,输出满足条件的最大价值和 题解:一看就是明显的01背包问题,但是价格乘以个数的 ...

  7. CodeChef CHEFSOC2 Chef and Big Soccer 水dp

    Chef and Big Soccer   Problem code: CHEFSOC2 Tweet     ALL SUBMISSIONS All submissions for this prob ...

  8. Pandas注意事项&窍门

    警告和疑难意味着一个看不见的问题.在使用Pandas过程中,需要特别注意的地方. 与Pandas一起使用If/Truth语句 当尝试将某些东西转换成布尔值时,Pandas遵循了一个错误的惯例. 这种情 ...

  9. Treflection05_扩展习题

    1. package reflectionZ; import java.lang.reflect.Constructor; import java.lang.reflect.Method; publi ...

  10. 深入浅出TensorFlow(二):TensorFlow解决MNIST问题入门

    2017年2月16日,Google正式对外发布Google TensorFlow 1.0版本,并保证本次的发布版本API接口完全满足生产环境稳定性要求.这是TensorFlow的一个重要里程碑,标志着 ...