【发布时间】:2013-01-30 02:36:20
【问题描述】:
在此处访问 2010。
好的,Dlookup 的行为会根据它们的使用位置而有所不同。我有这个 Dlookup 在 ClockNo_AferUpdate() 子例程中,该子例程在新表单条目上运行良好,可根据在 ClockNo 组合框中输入的“ClockNo”将标签的标题更改为“EmployeeName”字段下的“Employees”数据库中的内容:
Me.LabelName1.Caption = DLookup("[EmployeeName]", "Employees", "[ClockNo] =" & Forms![InspectionEntryForm]!ClockNo)
Employees 数据库有四个字段:AutoNumber 类型的“ID”、Number 类型的“ClockNo”、文本类型的“Shift”和文本类型的“EmployeeName”。
重新编辑:
ClockNo 组合框的 RowSource 来自员工数据库:
SELECT DISTINCTROW [ClockNo], [EmployeeName] FROM [Employees] ORDER BY [ClockNo];
结束重新编辑
我正在寻找的是 Form_Current() 中的相同功能,因此浏览旧条目会根据输入的 ClockNo 保留标签的标题。不幸的是,简单地重新使用上述 Dlookup 会给出“运行时错误 '3075':查询表达式 '[ClockNo] =' 中的语法错误(缺少运算符)”。
将 Dlookup 作为控制源附加到文本框确实可以,但标签似乎是这里的最佳用途。我已经在 Dloopkup 的 Criteria 部分搞砸了一段时间,但没有任何真正的成功。
最终目标是在组合框旁边有一个简单的标签,该标签根据员工当前和过去的 ClockNo 条目显示员工的姓名。该姓名与他们的时钟编号和班次一起存储在单独的员工数据库中。
这应该很简单,因为 ClockNo 条目和 Label 都在同一个表单和同一个数据库上运行。感谢您的意见!
【问题讨论】:
-
'[EmployeeName]' 已添加到上述编辑的选择源中。通过 ClockNo 组合框 RowSource 在没有 Dlookup 的情况下采购 '[EmployeeName]' 是如何完成的? (我尝试了几种我熟悉的语法来访问其他类型的对象)感谢您的帮助!
-
哦,我刚刚按原样提供了行源,没有进行任何编辑。我确实在我这边编辑了它(评论),很抱歉造成混乱。它现在为
[EmployeeName]和[ClockNo]设置,因为我真的不需要[ID]。我想弄清楚的是在更新 ClockNo Combo 框后在 VBA 中获取对[EmployeeName]的引用。再次感谢!
标签: database forms ms-access lookup caption