查询引用,就用Dget函数,正向、反向、条件查询均可实现

一、Dget函数 。
功能:从数据库中提取符合指定条件且唯一存在的记录 。
语法结构:=Dget(列表或数据库区域,返回值所在的相对列数或列标题的单元格引用或列标题,查找条件) 。
注意事项:
1、如果没有符合条件的记录 , 将返回#VALUE! 。
2、如果符合条件的记录有多条 , 将返回#NUM! 。
3、第一个参数“列表或数据区域”必须包含列标题 。
4、当第二个参数用“列标题”作为返回依据时 , 必须包含在双引号("")中 , 如"销量"、"价格"、"销售额"等 。
5、可以为参数“查找条件”指定任意区域 , 只要此区域至少包含一个列标签 , 并且列标签下方包含至少一个用于指定条件的单元格 。
二、Dget函数应用技巧解读 。
1、正向(单条件)查询 。
目的:根据“工号”查询对应的“销售额” 。
在目标单元格中输入公式:=DGET(B2:G9,"销售额",K2:K3) 。
解读:
1、可以使用公式:=DGET(B2:G9,6,K2:K3)来实现上述需求 , 因为“销售额”在数范围B2:G9中的相对列数为6 。
2、可以使用公式:=DGET(B2:G9,G2,K2:K3)来实现上述需求 , 因为“销售额”就是G2单元格的值 。
3、在实际的应用中 , 使用“列标题”、“列数”还是“单元格地址”引用 , 完全可以根据自己的爱好来应用 。
2、反向查询 。
目的:根据“销售员”查询“工号” 。
在目标单元格中输入公式:=DGET(B2:C9,"工号",K2:K3) 。
解读:
可以使用公式:=DGET(B2:C9,1,K2:K3)、=DGET(B2:C9,B2,K2:K3)来实现上述需求 。
3、多条件查询 。
目的:查询“销售员”对相关“产品”的“销售额” 。
在目标单元格中输入公式:=IFERROR(DGET(C2:G9,"销售额",K2:L3),"") 。
解读:
可以使用公式=IFERROR(DGET(C2:G9,5,K2:L3),"")、=IFERROR(DGET(C2:G9,G2,K2:L3),"")来实现上述需求 。
4、精准查询 。
目的:查询“王东”对“CPU”的销售额 。
在目标单元格中输入公式:=DGET(C2:G9,"销售额",K2:L3) 。
解读:
1、检查公式 , 并不存在错误 , 从返回的代码:#NUM!倒推原因 , 存在多条符合条件的记录 , Why?这是因为Dget函数默认在“查询条件”的后面带有通配符 , 条件“CPU”相对于“CPU*” , 分析数据源 , 产品中除了“CPU”之外 , 还有“CPU-1” , 再用Dget函数时 , 这两个条件是相同的 , 所以返回#NUM!
【查询引用,就用Dget函数,正向、反向、条件查询均可实现】2、为了达到“精准”一对一的查询 , 只需在条件的前面添加等号(=)即可 。


    推荐阅读