一、函数基础介绍

  DGET 函数是 Excel 数据库函数中的一员,主要用于从数据清单或数据库的特定列中提取满足给定条件的单个值 。当你需要在大量数据中精准定位并获取符合特定条件的唯一数据时,DGET 函数就会派上用场。

  DGET 函数:比xlookup还高级好用的查询函数?二、语法结构

  DGET(database, field, criteria)

  • database:这是构成列表或数据库的单元格区域。其中,首行包含列标签,下方各行则是具体的数据记录。例如,一个员工信息数据库,$A$1:$E$15 区域,A1:E1 为列标签(如员工编号、姓名、部门、职位、薪资),A2:E15为各员工的具体信息。
  • field:指定要提取数据所在的列。它既可以是列标签(需用双引号括起来,如 “姓名”),也可以是代表该列在数据库中位置的数字(从左到右,第一列为 1,第二列为 2,以此类推)。
  • criteria:是包含筛选条件的单元格区域。这个区域至少要有一个列标签,并且在列标签下方至少有一个单元格用于指定具体条件。例如,在上述员工信息数据库中,若要筛选销售部门的员工数据,可在 G1 单元格输入 “员工编号”,G2 单元格输入 “1002”,G1:G2 即为条件区域。

      DGET 函数:比xlookup还高级好用的查询函数?

      DGET函数的语法举例

    三、应用案例(一)从员工信息表获取特定员工薪资
    1. 场景描述:公司有一份员工信息表,记录了员工的各项信息,现在要获取名为 “张三” 的员工薪资。
    2. 数据准备:假设员工信息表数据范围为 A1:E15,A1:E1 分别为 “员工编号”“姓名”“部门”“职位”“薪资”,A2:E15 为各员工详细信息。在 H6 单元格输入 “姓名”,H7 单元格输入 “张三”,H6:H7 作为条件区域。
    3. 公式运用:在其他空白单元格(如 I7)输入公式=DGET($A$1:$E$15,I$6,H6:H7)。
    4. 结果解析:函数会在 A1:E15 这个数据库区域中,依据 H6:H7 的条件(姓名为 “张三”),从 “薪资” 列提取符合条件的唯一值,即张三的薪资。若存在多个名为 “张三” 的员工,或者没有符合条件的员工,函数将返回错误值。

      DGET 函数:比xlookup还高级好用的查询函数?

      dget函数获取张三的薪资

      DGET 函数:比xlookup还高级好用的查询函数?

      存在2个张三导致dget函数报错

    (二)获取特定班级特定学科的成绩
    1. 场景描述:学校有一份学生成绩表,涵盖多个班级学生的不同学科成绩,需要获取 “一班” 学生 “数学” 学科的成绩。
    2. 数据准备:成绩表数据范围为 A1:D15,A1:D1 分别为 “班级”“姓名”“学科”“成绩”,A2:D15 为学生成绩记录。在 F1 单元格输入 “班级”,F2 单元格输入 “一班”;在 G1 单元格输入 “学科”,G2 单元格输入 “数学”,F1:G2 作为条件区域。
    3. 公式运用:在其他空白单元格(如 H2)输入公式=DGET($A$1:$D$15,4,$F$1:$G$2),这里用数字 4 表示 “成绩” 列在数据库中的位置。
    4. 结果解析:函数会在 A1:D20 数据库区域内,根据 E1:F2 的条件筛选出 “一班” 学生的 “数学” 成绩,并返回唯一的最大值。若没有 “一班” 学生的 “数学” 成绩记录,或者有多个符合条件的成绩(这不符合函数要求的唯一性),函数将返回错误值。

      DGET 函数:比xlookup还高级好用的查询函数?四、注意事项

    1. 数据唯一性:DGET 函数要求返回的结果必须是唯一的。如果符合条件的记录不止一条,函数会返回 #VALUE! 错误;若没有符合条件的记录,则返回 #REF! 错误。
    2. 条件区域设置:条件区域的列标签必须与数据库区域的列标签完全匹配,否则函数无法正确识别条件。同时,条件区域中的条件要明确、准确,以确保筛选出期望的数据。
    3. 数据类型匹配:数据库区域和条件区域的数据类型应保持一致。例如,如果数据库中 “年龄” 列为数值型,那么在条件区域设置年龄条件时,输入的数据也应为数值型,否则可能导致筛选结果不准确或函数返回错误。
    五、总结

      相较于 xlookup 函数,dget 函数存在较大限制。它要求数据源所对应的查找条件具备唯一性,也就是说,数据源中涉及的条件列组合必须是独一无二的,不允许存在多条相同组合的情况。正因如此,在数据源具有唯一性的应用场景中,例如员工编号、料号等方面,dget 函数便显得极为便捷。

      本文标题:DGET 函数:比xlookup还高级好用的查询函数?

      本文链接:http://www.hniuzsjy.cn/renwen/57589.html