gdi 中发生一般性错误_你不知道的VBAVBA 过程中可能会发生的三种错误

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

9128d8d00f71f9497a21409de7f9bab5.gif

  推荐阅读  

北京大学出版社

《别怕,Excel VBA其实很简单(第3版)》

6e982dabeebe5250feb1bcede11dc866.png

一句顶一万句的“懒人心法”,

教你一键搞定所有报表! 

久经读者和市场检验的畅销书!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值