Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 4489|回复: 2

[分享] 【烟花原创】VBA零基础之第102篇 VBA调试(一)

[复制链接]
发表于 2014-2-18 23:08 | 显示全部楼层 |阅读模式
本帖最后由 hwc2ycy 于 2014-2-18 23:17 编辑

讲完了如何在代码中进行错误处理,今天开始讲讲如何调试代码。
调试在编程中是非常重要的一环,记得在论坛上第一次答VBA题,刚好碰到的是个排错题。那会还只刚刚学了基本的语法,还没写过几句代码。找着试试的心态玩玩,没成想这个排错竟然花了一天的时间才解决完,中间就是不停的F8,下断点,找出错的原因,看本地窗口。中间也记不清不停的重试了多少回,回想那个过程,真是晕并快乐着。

1.模式
当代码运行后一般会处于下列两种模式之一:
运行模式,正如其名,当你击运行或按F5后,代码便开始执行。
中断模式顾名思义,当前代码暂时中止运行(不是结束)。
在调试代码时,一般在此模式下进行。
通常在以下几种情况下可以进入中断模式:

A.执行程序时遇到断点
光标定位在执行语句所在行,按F9键可设置/取消断点。
菜单 调试 中点击切换断点也可。
1.jpg                              
设置了断点的代码所在行是以红色背景显示(颜色是可以定制的)
注意不可在声明语句,行标签所在行设置断点。

B. 在执行过程时按下CTRL+BREAK
在讲Excel的应用程序对象时有讲过EnableCancelKey属性可以控制Excel如何处理CTRL+BREAK用户中断。
当代码在运行的过程中无法按键取消(手慢另算)时,可以查查代码中是否有设置这个属性。
很多窗体代码中会设置此属性。

C.在执行时映衬到STOP语句或未捕获的运行错误
2.jpg
关于未捕获错误中断的设置之前有提到在菜单 工具 选项窗口。
3.jpg

D.添加一个监视,当监视值为真或改变时中断
4.jpg

E.Debug. Assert中的参数表达式为False时
5.jpg
代码运行中断后,可以看从本地窗口中发现变量i的值为5,此时i<5不成立,结果为False

F.逐语句(F8)
在代码窗口中光标定位到过程中时,按F8键逐行可进入中断模式。
中断时,代码所在的时为黄色背景,如下图所示。
6.jpg
excel精英培训的微信平台,每天都会发送excel学习教程和资料。扫一扫明天就可以收到新教程
发表于 2014-4-7 22:45 | 显示全部楼层
回复

使用道具 举报

发表于 2014-6-18 13:47 | 显示全部楼层
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-2 17:11 , Processed in 0.933552 second(s), 9 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表