当前位置:编程学习 > VB >>

VB If Error Then语句哪里错了

VB提示“无效的过程调用或参数”
答案:VB不是这样处理错误的
一般是用:
on error goto zzz
.......
Exit sub
zzz:
 
这种结构
其他:Error必须是一个Boolean型的变量。 问题出在Error是不是定义,或Error是那个对象的错误,如果已经定义,那么:
If Error = 0 Then
上面是判断定义对象是否没有发生错误。
 
但是,在VB中一般使用:
On Error Resume Next       '发生错误时终止
或
On Error GoTo abc
'这里是没有错误时执行的代码
Exit Sub
abc:
'这里是产生错误后的代码,一般放在过程的最底端 Error 是函数,
格式:
Error [(errornumber)]
errornumber 是运行时错误序号,该函数可以返回对应嵯峨序号的文本说明
例如:
Print Error(13)
显示“类型不匹配”

 
如果缺省errornumber,返回另长度字符串
所以Error的结果是另长度字符串,而另长度字符串不可能转换成布尔值。
而语句
If   <条件> Then
   ...
end if
中,<条件>的结果必须是布尔值,即:
If  True Then
   ...
end if
或
If   False Then
   ...
end if
所以这行代码是错误的!!! if Err then

上一个:请问用vba给单元格赋值后,如果内容显示不完,怎么样自动显示在下一行
下一个:我想用vb点击某个程序的关闭按钮

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,