VB NULL值问题

来源:百度知道 编辑:UC知道 时间:2024/05/30 11:33:15
我遇到这么一个情况
写程序时
有几条语句中数据会出现NULL值,但是现在只要是含有NULL值的语句以及该语句以后的语句(任何语句)都不会被执行,但是程序能正常运行,调试不报错.真是太奇怪了.
如:
MsgBox CStr(rs.Fields(2).value)
rs.movenext

这里value初值会是个NULL值,所以MsgBox rs.Fields(2).value就不会被执行,而且rs.movenext也不会被执行,但是程序不会中断也不会报错.
我又写了个函数MakeStr将rs.Filds(2).value这个值转化,就是当为NULL值时函数返回空字符串否则就是原字符串语句改为
MsgBox MakeStr(rs.Filds(2).value) 但是发现没用,因为这条语句不会被执行所以转化也转化不了.

我没有使用 On Error 语句.希望高手高手高高手指点指点再指点

不知道为什么不报告错误,一般是应为使用了On Error Resume Next。
曾经遇到过这样的问题:
当前函数没有使用On Error,但是上一层函数中使用了On Error Resume Next,在当前函数中遇到错误时,直接跳出了当前函数,返回到到上一层函数中去了。

你可以用IsNull函数来判断是否是Null
Dim Value As String
If IsNull(rs(2)) Then Value = "" Else Value = rs(2)

MsgBox format(rs.Fields(2).value)