我已经阅读并阅读了一些似乎可以回答我的确切问题的帖子,但我没有尝试过。我显然遗漏了一些简单的东西。我有一份报告显示员工加班。我希望用户能够单击超时条目的超链接或按钮,并打开表单来编辑条目。
以下代码为Overtime_ID提取参数输入框。手动输入Overtime_ID也会打开正确的表单,但它似乎默认为基础表中的第一条记录。
Private Sub Overtime_ID_Click()
Dim recordID As Integer
recordID = Me.Overtime_ID
DoCmd.OpenForm "frmEditOvertime",,, "Overtime_ID = " & recordID, acFormEdit
End Sub
frmEnterOvertime的记录来源是一张表 - 加班奖励。 该表中的列是: 加班ID(自动编号和PK) 进入日期 加班日期 小队清单(短文) 加班时间(数量) 主管(号) 评论(短文) 强制性(是/否) 更正(是/否) 人员编号(编号)
答案 0 :(得分:1)
由于加时ID 的名称中有空格,因此只需括号[]
或在OpenForm
调用中使用反引号即可。您不能简单地使用下划线作为替换,因为它会更改列标识符。
DoCmd.OpenForm "frmEditOvertime",,, "[Overtime ID] = " & recordID, acFormEdit
DoCmd.OpenForm "frmEditOvertime",,, "`Overtime ID` = " & recordID, acFormEdit
请注意 where 参数可以使用任何兼容的SQL WHERE
条件。