参考当前表格ID(主键)

时间:2016-08-18 00:25:41

标签: mysql vba ms-access access-vba

基本上我打开的表单会显示表格中的一组数据。此数据是Access数据库中表中的一行。我试图使用vba来获取表单/行的当前ID。我尝试做的一个例子是在下面的代码中:

If Me.process_status = 4 Then
    ssql = "UPDATE [activity_submissions_tb] SET [Edit] = True  WHERE" _ & 
    "submissionID =" & Forms![Form_Frm2_Activity_Submission_Edit]![submissionID]
    DoCmd.RunSQL ssql
Else
    ssql = "UPDATE [activity_submissions_tb] SET [Edit] = False  WHERE " _ &
    "submissionID =" & Forms![Form_Frm2_Activity_Submission_Edit]![submissionID]
    DoCmd.RunSQL ssql
End If

我正在尝试更新表格,但无法让WHERE条件生效,因为我不知道该为 currentID 添加什么。

我不知道如何使用vba获取当前表单/行的ID。任何帮助将不胜感激

3 个答案:

答案 0 :(得分:0)

你可以这样试试:

ssql = "UPDATE [activity_submissions_tb] SET [Edit] = True  WHERE [submissionID] = [currentID]"

希望有所帮助

答案 1 :(得分:0)

很简单,没有做足够的研究。一个简单的Me.submissionID就行了。

答案 2 :(得分:0)

我想你想要recordset.clone ......

Dim rs as Recordset
Dim ID as Integer

Set rs = me.Form.Recordset.Clone
ID = rs![FieldNameID]

或者,如果您知道列号

ID = rs.Fields(0)
Debug.Print ID