我在VBA访问中自学成才,现在我已经尝试将这个问题弄清楚了多年,但是无法让它发挥作用 . 任何建议都会非常感激 .
我有一个带有 staff
表的数据库和一个绑定到该表的表单 frmStaff
. 还有一个名为 tblStages
的第二个表,记录了每个工作人员所在的指导阶段 . 这些表与 staffID
字段相关 .
我试图在表单上添加一个文本框,它将显示当前记录中工作人员的当前指导阶段(我试图避免使用子表单) . 我已为此文本框设置了默认值,如下所示:
DLookup("[stage]", "[tblStages]", "[staffID] = '" & [Forms]![frmStaff]![txtStaffID] & "' AND isnull([endDate])")
阶段 endDate
为空的每个工作人员将只有1条记录 . 这个Dlookup在vba编辑器中运行得很好但是当我将它设置为文本框的默认值时它不起作用 . 我希望这是因为它尝试在窗体打开之前找到默认值,因此 txtStaffID
控件为空 .
我希望我已经正确地解释了这个问题 . 如果有人能指出我正确的方向,我会感激不尽 . 谢谢
1 回答
创建名为
qrfrmStaff
的查询:qrfrmStaff
为frmStaff
记录源,stage
为textBox的控制源 .确保query is not read only!