我有一个一对多关系的问题和操作表。
我有一个 OIssues 表单,它允许用户浏览每个问题。它有一个嵌入式子表单,显示与该问题相关的操作,并且有执行宏的命令按钮,允许用户快速将操作添加到子表单。
但是,如果用户尝试添加针对该问题已经存在的操作,我希望能够提示用户。
因此,我认为我需要将 VBA 添加到命令按钮单击,以查看 IssueID 1234 存在多少记录并且属于“更改请求”类型。如果大于 1,提示用户。但是我找不到正确的命令来做到这一点!
非常感谢任何帮助。
我有一个一对多关系的问题和操作表。
我有一个 OIssues 表单,它允许用户浏览每个问题。它有一个嵌入式子表单,显示与该问题相关的操作,并且有执行宏的命令按钮,允许用户快速将操作添加到子表单。
但是,如果用户尝试添加针对该问题已经存在的操作,我希望能够提示用户。
因此,我认为我需要将 VBA 添加到命令按钮单击,以查看 IssueID 1234 存在多少记录并且属于“更改请求”类型。如果大于 1,提示用户。但是我找不到正确的命令来做到这一点!
非常感谢任何帮助。
按钮后面的 VBA 代码。
Dim db as database
Dim rec as recordset
set db = currentDb
set rec = db.openrecordset("Select IssueID from YourTableName WHERE IssueID = " & Me.IssueID & " AND Type = '" & Me.Type & "'")
X = 0
rec.movefirst
If rec.eof = False then
rec.movelast
X = rec.recordcount
EndIf
If X > 1 then
msgbox "This already exists"
EndIf
编辑:我没有具体看到您的表格布局是什么,因此您可能必须在 OpenRecordSet 中进行某种联接,而不仅仅是直接“从 YourTableName 中选择 IssueID”。
A slightly better answer would be to use the COUNT function for example :-
Dim db as database
Dim rec as recordset
dim cnt as long
set db = currentDb
set rec = db.openrecordset("Select count(IssueID) from YourTableName WHERE IssueID = " & Me.IssueID & " AND Type = '" & Me.Type & "'")
cnt=0
if not rec.eof then cnt=rec.fields(0)
If cnt > 0 then msgbox "This already exists"