在我的代码中,我在VBA中运行一条SQL语句,如下所示:
Dim rs As DAO.Recordset
Dim db As DAO.Database
Set db = CurrentDb
Set rs = CurrentDb.OpenRecordset( SQL-Statement)此SQL语句要么返回一个值,要么不返回任何值。
然后我想检查是否返回了一个值。
If IsError(rs.Fields("Name").Value) = True Then
MsgBox(Error)
Else
Variable = rs.Fields("Name").Value
End If但是:如果出现错误,方法IsError不会返回true,但脚本会显示runtime-error 3021并中断。为什么这个方法会失败呢?
不幸的是,我不得不在我的手机上写这篇文章,因为我不被允许从我的工作PC登录到平台。
Ty all all Advance
发布于 2021-11-03 16:20:25
您需要检查记录集的EOF属性。
试试这个:
If Not rs.EOF Then Variable = rs.Fields("Name").Value,它与
If Not rs.EOF Then Variable = rs![Name]https://stackoverflow.com/questions/69827609
复制相似问题