1

我确信这很简单,但我仍处于学习如何在访问中使用 VBA 的早期阶段。我不确定我搞砸了什么,但这就是发生的事情:

我有一个包含列表和组合框的表单。我创建了一个命令,当在列表上双击时,它会以其原始表格形式返回 SQL 查询。当我最初编写代码时,它只有 2 个字段,一个数字和一个美元数字。编码:

Private Sub List43_DblClick(Cancel As Integer)

DoCmd.Query ("BuyerPerfDetailPA2")

End Sub

在那里工作 2 个字段,但我最近在第 3 列中添加了第三个,是/否响应。现在,当我运行此代码时,我收到标题中列出的“编译错误”。我的猜测是它无法匹配的添加列 - 因为查询有一个 WHERE 子句(WHERE (((CombineTables.[PA#])=Forms![Buyer Performance Report]!List43)。PA# 分配给列表中的第一列(美元金额为 2,是/否为 3)3。

出现错误后,当我按 OK 时,它确实显示查询已运行,​​因此它也可能只是 VBA 访问的问题。

有什么建议么?我希望这不是太模糊。

4

1 回答 1

1

“未找到方法或数据成员”DoCmd是由于没有名为 的方法而发生的编译错误Query

如果要在数据表视图中打开BuyerPerfDetailPA2,请使用此...

DoCmd.OpenQuery "BuyerPerfDetailPA2"

那里不需要括号。

如果BuyerPerfDetailPA2实际上是一个“操作查询”,并且您想执行它,请使用 ...

CurrentDb.Execute "BuyerPerfDetailPA2", dbFailOnError

如果这些建议都不是您想要的,请更详细地告诉我们您想要什么并向我们展示BuyerPerfDetailPA2的 SQL 。

于 2013-03-18T18:10:31.700 回答