Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-模块/函数/VBA

与Dlookup函数相似的自定义函数

时 间:2012-05-11 14:12:47
作 者:wsl   ID:23994  城市:黔东南
摘 要:与Dlookup函数相似的自定义函数
正 文:

     在网上看过关于Dlookup替代函数的文章,一直没引起重视,感觉Dlookup函数很好用,还用它的什么替代品。直到前几天,我用经过加密后的用户密码作为条件值使用Dlookup函数出现提示“语法错误(操作符丢失)在查询表达式.....”的错误之后,我才对Dlookup的替代函数发生兴趣。

    Dlookup函数出现错误号为3075的“语法错误(操作符丢失)在查询表达式.....”或“字符串的语法错误 在查询表达式......”的错误,多是由于criteria中给定的条件值是字符串(需要用一对英文单引号将字符串条件值括起来),包含有英文单引号“'”。如果在代码中用一对chr(34)(英文双引号)将条件值括起,则当条件值中包含有英文双引号“"”时,还会出现相同的错误。如果我们不清楚criteria中给定的字符型条件值(这时条件值多是变量)是否包含有英文单引号“'”的情况下使用Dlookup函数,当条件值中出现英文单引号时,就会出现这个错误。

    为避免出现上面的错误,我们就要想到做个与Dlookup函数相似的自定义函数,在这个函数中,条件值完全可以包含英文单引号和英文双引号,对条件值不需要用英文单引号或英文双引号括起来。

    本人制作了个与Dlookup函数相似的自定义函数,取名为funLookup,其代码及使用事例见附件。

 说明:
    一、什么情况下使用Dlookup函数和funLookup自定义函数:
    1、非常清楚条件值中绝不包含英文单引号时,用Dlookup函数;
    2、非常清楚条件值中可能包含英文单引号,但绝不包含英文双引号时,用Dlookup函数,在代码中,将括起条件值的一对英文单引号改为chr(34)(英文双引号);
    3、除开上面两种情况(即条件值中可能包含英文单引号,也可能包含英文双引号),请使用自定义函数funLookup。


    二、funLookup自定义函数
    1、功能:在表或查询中返回满足条件的某字段值,相似于DLookup函数;
    2、注意:其注意事项,请在函数代码中见“注意”说明;
    3、应用:不保证在Access 2007、Access 2010中一定能用;

    4、制作人:wsl;

附   件:

点击下载此附件



Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助