如何使用 DLookUp 函数,它是否适合这项工作?
How to use the DLookUp function and if it is the correct function for this job?
我的数据库中有两个 table,还有一个在用户登录时打开的表单。
此表单中的文本框将显示用户名,例如"Ollie",我想要另一个文本框在打开表单时显示用户 table 中的此用户合同工时。
我已经尝试在更新前部分使用 DLookUp 表单,但是没有任何反应?以下是我尝试过的示例。
=DLookUp("[ContractedHours]","tblUser","[Operator] =[tblUser]![UserLogin]")
所以说我的表单文本框 "Operator" 中的值是 Ollie,我的 table 列 "UserLogin" 中的值是 Ollie,我想要另一个文本框表格以显示 Ollie 记录上的合同工时。
tblUser 包含这些列
ID UserLogin Contracted Hours Password
1 Ollie 8:00 *****
2 Ryan 5:00 *****
我的表单包含一个文本框,该文本框等于 Ollie 或 Ryan,我想要另一个显示相关约定时间的文本框。
DLookup 仅在您为其提供允许其识别 table 中的特定记录的有效条件时才起作用。您提供的不是价值;它是对 table 中列的引用。 DLookup 无法知道您指的是哪条记录。
查看 this page 中的一些工作示例。请注意,它们都有一个指向特定记录的条件:
DLookup("UnitPrice * Quantity", "Order Details", "OrderID = 10248")
或
DLookup("CustomerID", "Orders", "OrderID = Forms![Orders]!OrderID")
它应该是这样的:
=DLookUp("[ContractedHours]","tblUser","[UserLogin] = '" & Me!TextboxWithUserName & "'")
根据您从 table 用户那里摘录的内容,这可能是因为您没有在 DLookUp 的合同工时列名称中包含 space。另外,我会将您的表单调用放在字符串之外。
尝试:
=DLookUp("[Contracted Hours]","tblUser","[Operator] = '" & Forms![tblUser]![UserLogin] & "'")
我的数据库中有两个 table,还有一个在用户登录时打开的表单。
此表单中的文本框将显示用户名,例如"Ollie",我想要另一个文本框在打开表单时显示用户 table 中的此用户合同工时。
我已经尝试在更新前部分使用 DLookUp 表单,但是没有任何反应?以下是我尝试过的示例。
=DLookUp("[ContractedHours]","tblUser","[Operator] =[tblUser]![UserLogin]")
所以说我的表单文本框 "Operator" 中的值是 Ollie,我的 table 列 "UserLogin" 中的值是 Ollie,我想要另一个文本框表格以显示 Ollie 记录上的合同工时。
tblUser 包含这些列
ID UserLogin Contracted Hours Password
1 Ollie 8:00 *****
2 Ryan 5:00 *****
我的表单包含一个文本框,该文本框等于 Ollie 或 Ryan,我想要另一个显示相关约定时间的文本框。
DLookup 仅在您为其提供允许其识别 table 中的特定记录的有效条件时才起作用。您提供的不是价值;它是对 table 中列的引用。 DLookup 无法知道您指的是哪条记录。
查看 this page 中的一些工作示例。请注意,它们都有一个指向特定记录的条件:
DLookup("UnitPrice * Quantity", "Order Details", "OrderID = 10248")
或
DLookup("CustomerID", "Orders", "OrderID = Forms![Orders]!OrderID")
它应该是这样的:
=DLookUp("[ContractedHours]","tblUser","[UserLogin] = '" & Me!TextboxWithUserName & "'")
根据您从 table 用户那里摘录的内容,这可能是因为您没有在 DLookUp 的合同工时列名称中包含 space。另外,我会将您的表单调用放在字符串之外。
尝试:
=DLookUp("[Contracted Hours]","tblUser","[Operator] = '" & Forms![tblUser]![UserLogin] & "'")