VBA编程时经常碰到运行错误,虽然有错误代码提示,但我们还是希望能返回某个特定的错误值,以便于程序的调试工作。
VBA运行的错误值经常有以下常量:
xlErrDiv0(针对#DIV/0!)
xlErrNA(针对#N/A)
xlErrName(针对#Name?)
xlErrNull(针对#Null!)
xlErrNum(针对#Num!)
xlErrRef(针对#Ref!)
xlErrValue(针对#Value!)
加入要从自定义函数中返回错误值#N/A,可以使用如下语句:
REMOVEVOWELS=CVErr(xlErrNA)
具体函数如下:
Function REMOVEVOWELS(TXT)As Variant
Dim i AS Long
RemoveVowels=””
If Application.worksheetfunction.Istext(txt) then
For i =1 to Len(txt)
If not ucase(mid(txt,i,1) like “{AEIOU} then
REMOVEVOWELS=REMOVEVOWELS&mid(txt,i,1)
Endif
Next
Else
REMOVEVOWELS=CVErr(xlErrNA)
Endif
Endfunction
上述代码的函数返回值的数据类型为VARiant,因为改函数可以返回非字符串的值。
1745

被折叠的 条评论
为什么被折叠?



