我有一个函数,如果输入无法转换为整数,则该函数返回零。
但有时它会失败,如果结果集中的字段不是正确的值,无论它是什么。
Function nulblank(str)
dim val
if IsNull(str) then
val=0
else
str = trim(str)
if isNumeric(str) then
val = cDbl(str)
else
val = 0
end if
end if
nulblank = val
end function
我在str = trim(str)
上收到错误0x80020009此功能仅在
上调用set rs = conn.execute(sql)
i = nulblank(rs("somefield"))
我怎样才能使这个功能"故障保护",所以它永远不会死,但在"坏"上返回0值?
我想我可以在接下来的错误恢复上做,如果Err.Number<>然后是什么。
但是什么可以在rs(" somefield")中,它不是null,但不能修剪()'
答案 0 :(得分:0)
该错误通常与空记录集有关。
在尝试检索列值之前,您应该检查记录集是否有一行,例如:
set rs = conn.execute(sql)
if not rs.eof then
i = nulblank(rs("somefield"))
end if