Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

通用过程中Dlookup()的参数如何写?

zhengxuequn  发表于:2016-01-10 09:31:15  
复制

想写一个通用的模块, 其中会用到Dlookup()函数,求教函数的参数如何写?

例如: 

Public Function Testing(表名 As String, 参数1 As String,参数2 As String, 参数3 As String)as String

.......

    If IsNull(Dlookup("参数1","表名","参数2 = 参数3")) Then

    Testing = Dlookup("参数1","表名","参数2 = 参数3")

    .......

    End If

.......

End function

可能是Dlookup()内部参数拼写不对,IF 总不能正确判断条件。

多谢老师们指教!


 

Top
落尘_小新 发表于:2016-01-10 19:12:34

DLookup(参数1, 表名, 参数2 & " = '" & 参数3 & "'")

不过看你的IF语句条件好像有些不合逻辑,即然没有满足条件的记录,那为嘛还取这个值,直接不就是空的吗?

修改一下,供参考:

Public Function Testing(表名 As String, 参数1 As String, 参数2 As String, 参数3 As String) As String

    If Not IsNull(DLookup(参数1, 表名, 参数2 & " = '" & 参数3 & "'")) Then

        Testing = DLookup(参数1, 表名, 参数2 & " = '" & 参数3 & "'")

    End If

End Function



zhengxuequn 发表于:2016-01-10 20:06:14

谢谢老师指点, 确实疏忽少了个Not

不过好像还是不行,没有执行If内的语句...



落尘_小新 发表于:2016-01-10 21:18:43

点击下载此附件

供参考


看你自定义函数的各参数类型都是 字符型 这样写可以。

但如果是数值型的或日期型的那就得改改了。



总记录:3篇  页次:1/1 9 1 :