Access VBA 中的 IsError()

IsError() in Access VBA

在我的代码中,我 运行 VBA 中的 SQL 语句如下:

  Dim rs As DAO.Recordset
  Dim db As DAO.Database
  Set db = CurrentDb
  Set rs = CurrentDb.OpenRecordset( SQL-Statement)

此 SQL- 声明 return 一个值或 none。

然后我想检查一个值是否returned。

  If IsError(rs.Fields("Name").Value) = True Then   
     MsgBox(Error)
  Else   
     Variable = rs.Fields("Name").Value
  End If

但是:如果出现错误,方法 IsError 不会 return 为真,但脚本会显示 运行time-error 3021 并中断。 为什么这个方法会失败?

不幸的是,我不得不在我的手机上写这篇文章,因为我不允许从我的工作电脑登录平台。

提前准备好

您需要检查记录集的 EOF 属性。

试试这个:

If Not rs.EOF Then Variable = rs.Fields("Name").Value

相同
If Not rs.EOF Then Variable = rs![Name]