问题描述
我一直在努力如何在表单上编写DLookup。我有两个组合框(一个雇员,一个培训班名称),如果一个雇员已经参加了一个班级,则需要弹出一个消息框。我正在从Employee表中获取记录,从Training Class表中获取一条记录,如果这两者的组合存在,则需要对消息框表示他们已经参加了该课程。注意我不是VBA程序员。我已经进行了一个现有的Access数据库项目,因此我正在从YouTube和类似的社区委员会中学习。
这是我尝试过的不起作用的内容:
Private Sub Date_Taken_BeforeUpdate(Cancel As Integer)
If Not IsNull(DLookup("[Training Classes Taken tbl].[Officer]","[Training Classes Taken tbl]","[Training Classes Taken tbl].[Officer] = '" & Me.Officer & "'") & "'AND Me.[Training Class Name]= '" & Me.[Training Class]) Then
MsgBox "Class already taken."
Cancel = True
End If
Exit Sub
解决方法
DLookup查找(“您想要的字段”,“它来自的表”以及“查找字段及其值应该是”)。因此,我可能会在按钮的on click事件中尝试使用(假设办公室:
Dim varx as variant
varx = Dlookup("Officer","[Training Classes Taken]","[Training Class Name]='" & me.[Training Class] & "'")
if not IsNull(varx) then
msgbox("you have already taken this course")
end if