ACCESS中Dlookup函数使用
Dlookup函数,利用条件从表中筛选查找需要的单项数据,类似EXCEL中的Vlookup函数,用法简单快捷,相对SQL语句要简单。
函数用法
Dlookup(字段名,表或查询名字,条件)
解释如下:
Dlookup(要查询内容的字段,从那个表或查询找,筛选条件)
注意:这里的字段名、表名或者查询名要用英文状态下“”,中间逗号要用英文状态下的逗号。
对于文本型变量或控件类型,条件中应使用 ”字段名 = ’” & 控件或变量 & “‘ “。注意引用变量要使用英文状态下(单引号,双引号,空格,&,空格,名称(变量或控件),空格,&,双引号,单引号)用法如下:
DLookUp("数量","表1","名称=‘" & [txt名称] & "‘")
对于数字型变量或控件类型,条件中使用 "字段名= " & 控件或变量 即可
对于日期型变量或控件类型,条件中使用 "字段名= #" & 控件或变量 & "#" 即可。
举例
以文本型变量举例
要筛选的表
表名为 “108将”,具体内容如下:
创建窗体
窗体创建组合框控件,名称为“姓名”,行来源项设置为“SELECT [108将].姓名 FROM 108将 ORDER BY [108将].座次”。利用下拉列表选择人员。
创建“绰号”文本框控件,用来根据“姓名”控件选择的人名筛选出该好汉的绰号。
创建“登录”按钮(或随便名字),按钮Click事件,写如下内容:
Me.绰号.Value = DLookup("绰号", "108将", "姓名 = ‘" & Me.姓名 & " ‘")
点击按钮后可实现根据姓名筛选出绰号。
以数字型变量筛选举例如下:
建立文本框,名字为“座次”
在“登录”按钮(或随便名字),按钮Click事件,写如下内容:
Me.绰号.Value = DLookup("绰号", "108将", "座次 = " & Me.座次)
Me.姓名 = DLookup("姓名", "108将", "座次=" & Me.座次)
效果如下:
姓名和绰号完全根据座次进行筛选
相比较而言,数字型条件写起来最为简单,日期型只是把变量引用过程中的单引号改为了# 。