打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
你不知道的VBA|VBA 过程中可能会发生的三种错误
编译错误
编译错误是因为过程中的VBA代码书写错误产生的,写错关键字、语句结构不配对等都会引起编译错误,如:
当试图执行存在编译错误的VBA过程时,VBA会拒绝执行,并显示一个对话框提示出错原因,如图 9-1 所示。
运行时错误
如果过程在执行时试图完成一个不可能完成的操作,如除以 0、打开一个不存在的文件、删除正在打开的文件等都会发生运行时错误。
VBA不会执行存在运行时错误的代码,并会通过对话框告知我们出错的原因,如图 9-2所示。
逻辑错误
如果过程中的代码没有任何语法问题,执行过程时,也没有不能完成的操作,但执行过程后,却没有得到预期的结果,那么这样的错误称为逻辑错误。
举个例,如果要把 1 到 10 的自然数依次写进A1 : A10 区域,却将过程写成这样:
这个过程中的每行代码都没有语法错误,也没有不可执行的操作,但执行过程后,却没有得到期望的结果,如图 9-3 所示。
执行过程没有得到期望的结果,是因为循环体中的代码“Cells(1, 1).Value = i”存在问题。虽然过程中的代码将 1 到 10 的自然数都写入了单元格中,但每次写入数据的都是Cells(1, 1)引用的A1 单元格,所以执行过程后,看到的是最后一次写入单元格中的 10。
很多原因都会导致过程出现逻辑错误,如循环变量的初值和终值设置错误,变量类型不正确等。与编译错误和运行时错误不同,存在逻辑错误的过程,执行后Excel并不会给出任何提示。所以,逻辑错误最不容易被发现,但是在所有错误类型中占的比例却最大。
调试代码时,很多时候都是在处理过程中存在的逻辑错误。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
好用,容易理解的VBA积木代码
相同数据合并单元格,一“点”到位
VBA入门04:对象的方法
宏的使用以及for循环
.VBA基础入门(31.1)【答疑】合并单元格的那点儿事儿
Excel操作题也能自动评分
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服