【问题标题】:"Method or data member not found" Access Error“未找到方法或数据成员”访问错误
【发布时间】:2013-07-19 07:42:52
【问题描述】:

我正在尝试使用此代码比较两个表数据:

Set rstA = dbs.OpenRecordset("SerialAccount_a")
Set rstB = dbs.OpenRecordset("SerialAccount_b")

While Not rstB.EOF

  serialNumber = rstB.serial
  rstB.Filter = "serial = '" & serial & "'"
  Set rstFiltered = rstB

  Do While Not rstFiltered.EOF

    If rstA.Fields("serial") = rstB.Fields("serial") Then

      If rstA.Fields("accountnumber") <> rstB.Fields("accountnumber") Then

        accountMessage = "... do not match!"
        Debug.Print accountMessage

      ElseIf rstA.Fields("model_number") <> rstB.Fields("model_number") Then

        modelMessage = "... do not match!"
        Debug.Print modelMessage

      End If

    End If
  Wend

Wend

当我尝试运行它时,编译器在行上给我错误“找不到方法或数据成员”:

serialNumber = rstB.serial

我不明白为什么,serial 是这两个表中的一列。有人能告诉我为什么会弹出这个错误吗?

【问题讨论】:

  • 你甚至没有在任何地方使用那个变量。
  • 我想第 7 行需要修复......一旦第 6 行被弄清楚,就会被注意到。 :-)

标签: ms-access vba


【解决方案1】:

您想要rstB!serialrstB.Fields("serial")。前者使用“bang”运算符 (!) 作为后者的语法糖。

当您编写rstB.serial 时,您试图引用记录集的serial 属性。但是记录集对象没有serial 属性,因此您收到“找不到方法或数据成员”错误。

【讨论】:

猜你喜欢
  • 2017-05-04
  • 1970-01-01
  • 2020-03-07
  • 1970-01-01
  • 1970-01-01
  • 2021-01-26
  • 2020-06-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多