【问题标题】:Dlookup query - Brining an #Error messageDlookup 查询 - 产生 #Error 消息
【发布时间】:2017-06-21 21:53:39
【问题描述】:

我有一个访问数据库,我正在尝试对查询进行 Dlookup 以提取信息。类似于 excel 上的 vlookup。

Analyst Name: DLookUp("[Name]","Table2","[Analyst_ID]=" & [Analyst ID])

Analyst_ID 和 Name 位于表 2 中,并提供了我需要的信息。 Analyst ID 列是表 1 中的原始数据,是我希望使用的查找值。

查询运行但我得到#Error

请帮忙!

【问题讨论】:

  • 您不应该在查询中使用 DLookup,只需添加并通过分析师 ID 链接另一个表
  • 感谢您的评论,但我该怎么做。我已将其添加为关系,但我不确定如何继续。我想要另一个名为分析师姓名的列,它将使用表中的分析师 ID 在表 2 中进行检查和比较,并为我提供与该 ID 关联的名称
  • 在查询设计器中,右键单击并选择添加表。双击第二个表。如果它已保存在关系中,您应该会看到它与已经存在的连接一起出现。将第二个表中的名称字段添加到您的查询中。鲍勃是你的叔叔。
  • 成功了!谢谢你,明蒂。那要简单得多

标签: ms-access


【解决方案1】:

我的猜测是分析师 ID 的存储方式。这可能有效:

Analyst Name: DLookUp("[Name]","Table2","[Analyst_ID]='" & [Analyst ID] & "'")

但是,对于如此简单的布局,您确实应该使用内部连接查询。

创建一个新查询。在设计模式下将这两个表添加到查询中。单击并将 Analyst_ID 从表 1 拖到表 2 上。

您现在应该会在表之间看到一条直线,每个表都指向 Analyst_ID。

将表 2 中的 Analyst_ID 和名称拖放到下面的网格中。将该查询另存为 qryAnalyst。

现在,您可以编写一个简单的 SQL 语句;

"SELECT * FROM qryAnalyst WHERE Analyst_ID =  " & [Analyst ID] & ""

或者,如果 Analyst_ID 存储为文本,则使用:

"SELECT * FROM qryAnalyst WHERE Analyst_ID =  '" & [Analyst ID] & "'"

【讨论】:

  • 以为我只是在上面写了这个评论?
  • 像大多数人一样,我没有费心阅读 cmets 并直接找到答案。是的,既然我已经读过它,可以说你的版本是同一件事的一个非常简单的版本(减去对数据类型潜在问题的引用),但是 S.O.旨在成为问题完整答案的存储库。随意将您的评论充实为完整的答案并添加。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-12
  • 1970-01-01
  • 2018-12-01
  • 1970-01-01
  • 2017-01-04
相关资源
最近更新 更多