Office中国论坛/Access中国论坛

标题: [分享]dlookup错误 [打印本页]

作者: suve    时间: 2006-6-16 17:16
标题: [分享]dlookup错误
最近总是被dlookup的查询结果错误折磨得发疯,结果终于找到错误原因:

语法错误

原因1: 条件项一定要按规则输入,比如,变量me.ID一定要放在'me.id'里面

            在查询语句里放引号和&符号的方法,我试了N次才得出这个看不明白但好用的结果:

            " SELECT " & """IN""" & "&" & "[toNumber] AS inNumber,----结果是把IN&[TONUMBER]的值输入innumber

类型匹配

原因2:条件里的相比较的两项,类型要一致,数字与字符不能比较

结果错误

原因3:查找的字段不为null,它的值是"",DLOOKUP也认为它存在, 同样,dcount也认为""是个值


[此贴子已经被作者于2006-6-16 9:19:03编辑过]


作者: fan0217    时间: 2006-6-16 17:59


Dlookup函数的难点是第三个参数,设置不含Where的条件子句。注意文本,数字和时间设置的区别。
作者: suve    时间: 2006-6-16 19:47
以下是引用fan0217在2006-6-16 9:59:00的发言:



Dlookup函数的难点是第三个参数,设置不含Where的条件子句。注意文本,数字和时间设置的区别。

精典之语,执行起来不容易哦,最好有很实际的例子
作者: 一点通    时间: 2006-6-16 19:55
以下是引用suve在2006-6-16 11:47:00的发言:



精典之语,执行起来不容易哦,最好有很实际的例子



你说的例子,今天就有网友发上来了,请看一下

http://www.office-cn.net/forum.php?mod=viewthread&tid=41548
作者: suve    时间: 2006-6-16 20:03
已经下载,谢谢!
作者: suve    时间: 2006-6-16 21:10
但是还是没有解决我的问题:

下面这句是找不为空的EquationPartNumber,聚合函数错误:

varC = DLookup(EquationPartNumber, "tblto", "toNumber ='" & Me.toNumber & "' and " & "Nz('" & "[" & EquationPartNumber & "]" & "')<>" & "[""]")


我本来以为,DLOOKUP自己会找不为空的值出来,结果他把第一个空值给我提出来,结果nz(varC)=""

所以我不得不在后面的条件里面加上nz(EquationPartNumber)<>""

这样的格式怎么写?

另外,NULL 还是有用的阿,怎么让一个控件值为NULL? 我试过了这样:

me.text1=Null

结果,DLOOKUP还是认为有值,跳不过去



[此贴子已经被作者于2006-6-16 13:11:53编辑过]


作者: andymark    时间: 2006-6-16 21:44
试试

len(me.text1)=0




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3