2017-05-08 95 views
0

嗨我试图显示一个基于查询值的消息框。我试过以下的查阅函数:如果查询条件满足,访问显示消息框

If (DLookup("ID1", "qry_CheckID") = Forms!MainForm!ID2) Then 
    MsgBox "Your ID is bad.", vbOKOnly, "" 
End If 

基本上,我想看看是否ID1从我查询我的形式ID2相匹配。然而,DLookUp没有按照我的意图工作。

+0

您没有为使用DLookup,从而返回一个随机值指定“标准” - 除非您的查询限制数据莫名其妙。 –

+0

我也试过如下: “你的ID是坏的” 如果(!!!!使用DLookup( “ID1”, “qry_CheckID”, “ID1”=形式的MainForm ID2)=形式的MainForm ID2)然后 MSGBOX, vbOKOnly,“” End If 。我没有成功。这是你的意思吗? – xpandamonium

+0

在'IF'之前添加debug.print并显示测试的各个部分。我喜欢'Debug.Print“>”&DLookup(....)&“<”和类似于您的TextBox。你有什么价值?由于我看不到您的查询或数据或结果...很难猜到。 –

回答

1

在DLookup中包含过滤标准。连接变量时,对表单域/控件的引用是一个变量。如果不匹配,Null将返回。由于您的评论你说你只想如果有匹配查询消息:

If Not IsNull(DLookup("ID1", "qry_CheckID", "ID1 = " & Forms!MainForm!ID2)) Then 
MsgBox "Your ID is bad.", vbOKOnly, "" 
End If