日常工作中,我们经常会遇到这样的情况:一份完整的员工信息表或成绩表,只需要快速查询某一个人的相关信息。比如在几十上百人的表格中,想单独查看某个人的成绩、工号或部门。这个场景用VLOOKUP可以解决,但今天要说的 DGET函数 更加直接。
DGET函数 是Excel中的一个数据库函数,它的作用是从数据库中提取符合指定条件的唯一值。简单来说,就是给定一个条件,它从数据表里把对应的内容找出来。
DGET函数 的语法很简单:
=DGET(数据库区域, 字段, 条件区域)
这三个参数分别对应:要查询的数据表范围、要返回哪一列、以及查询条件放哪里。
快速上手:DGET函数搭配下拉菜单
看一个实际场景。假设有这样一张成绩表,A列到E列分别是序号、姓名、语文、数学、英语,一共9行数据。现在想实现这样的效果:在下拉菜单中选择某个学生姓名,下方立即显示出该学生的各科成绩。
第一步:设置下拉菜单
在G3单元格写上“姓名”作为提示,在G4单元格添加数据验证。点击【数据】→【数据验证】,允许选择“序列”,来源选择B列的所有姓名。设置完成后,G4右下角会出现下拉箭头,可以直接选择学生姓名。

第二步:输入DGET公式
在H7单元格输入公式:
=DGET($A$1:$E$9,G7,$G$3:$G$4)
然后选中G7到G11,按 Ctrl+D 将公式向下填充。

公式拆解:
| 参数 | 内容 | 含义 |
|---|---|---|
| 数据库区域 | $A$1:$E$9 |
整个数据表范围 |
| 字段 | G7 |
要查询的字段名(序号、姓名、语文等) |
| 条件区域 | $G$3:$G$4 |
查询条件(包含字段名和具体姓名) |
效果:在G4中选择“甲”,下方自动出现甲的序号、各科成绩。切换到“丁”,所有数据同步更新。
DGET函数的使用技巧和注意事项
条件区域必须有字段名。比如条件区域 $G$3:$G$4,G3必须写“姓名”两个字,且与数据表中的列标题一致。
查询不到数据时会返回错误值。如果下拉菜单中选了某个姓名但表格里没有,公式会报错。可以用 =IFERROR(DGET(...), "未找到") 来美化显示。
数据库区域建议用绝对引用。$A$1:$E$9 这种写法固定了数据范围,公式填充时不会变动。条件区域也可以写成多列。比如同时限制“姓名=甲”且“班级=一班”,条件区域可以扩展为两列。
常见问题
问题1:DGET函数和VLOOKUP有什么区别?
DGET适合条件明确、需要返回整条记录的查询;VLOOKUP更适合查找某个具体字段值。DGET的语法更简单,但要求条件区域和数据表的字段名完全一致。
问题2:为什么公式返回#NUM!错误?
说明查询条件匹配到了多条数据。DGET要求条件唯一匹配,如果数据表中有两个同名的人,就会返回这个错误。
问题3:DGET函数在WPS中能用吗?
可以。WPS表格完全支持DGET函数,操作步骤和Excel一致。
总结
DGET函数 适合做单人信息查询:先通过数据验证做一个下拉菜单,再用DGET把对应的整条记录抓取出来。比起VLOOKUP,DGET函数 的公式更简洁,配合下拉菜单使用效果很好。
评论 (0)