程序员中一直流传着一个说法:好的程序不是编出来的,而是“调试”出来的。虽然这个说法并不严谨,但是足以体现出调试对于程序设计的重要意义。事实上,对于初学编程的读者来说,调试不仅能够保证程序正确运行,而且还能帮助初学者深入理解计算机程序的工作机制。比如,在下一章学习多重循环时,如果读者能够使用单步调试功能跟随程序逐行执行,同时在程序执行到每行时随之思考,理解起来会比单纯的读书高效许多。可以说,能否熟练使用调试工具,是编程老手与菜鸟之间最明显的区别之一。
经过本章的学习,读者需要重点理解和掌握的知识包括:
★ 程序错误分为编译错误、运行时错误和逻辑错误。
★ 逻辑错误隐蔽性很强,不会引发VBA警告,相对危害更大。
★ 用鼠标单击灰色边框可以设置断点,但是有些语句前无法设置断点。
★ 使用光标悬停和“添加监视”的方式都能随时观察表达式取值。
★ 使用“F8”键可以实现单步逐语句执行,使用“Shift+F8”组合键则可以实现单步逐过程执行。
★ 在代码中插入 Debug.Print 语句,可以在不打断程序的情况下让其输出中间结果,从而便于分析。
★ Debug.Print 允许将多个字符串或表达式合并输出,但要使用分号或逗号将其隔开。