如何在Excel中查询多个数值(10种方法)

  • Share This
Hugh West

在进行数据分析时 微软Excel。 你可能需要获得某个ID、用户名、联系信息或其他唯一标识符的所有匹配数据,你可能会遇到问题。 这篇文章说明了如何使用Excel根据一个或多个条件查询Excel中的多个值,并在一列、一行或单个单元格中返回多个结果。 我将尽力解释这一概念,以便初学者能够理解他们并将其应用于可比较的问题。

下载实践工作手册

下载这本练习手册,在阅读本文时进行练习。

查询多个值.xlsx

在Excel中查询多个数值的10种合适方法

1.使用数组公式在Excel中查询多个值

优秀作品 VLOOKUP功能 我想到了一个直接的答案,但困难在于它只能返回单一的匹配。

为了执行这些任务,我们可以利用以下函数的数组公式。

  • 基金会 - 如果条件得到满足,它输出一个值,如果条件没有得到满足,它输出另一个值。
  • 小型 - 它返回数组的最低值。
  • 索引 - 根据你提供的行和列,给出一个数组元素。
  • ROW - 它为你提供了行号。
  • 专栏 - 它给你的是该列的编号。
  • 误差(IFERROR - 检测错误。

下面可以看到这些公式的几个例子。

1.1 查询一个行中的多个值

比方说,我们有几个经营多家公司的高管的名字在列 B .我们在列中显示了公司名称 C 我们的目标是编制一份由特定人员经营的所有企业的名单。 请按照以下步骤完成。

步骤1。

  • 在一个空行中,提供一个唯一的名字列表。 这些名字被输入到单元格中 B13:B15 在这个例子中。

第2步。

  • 进入 在单元格中添加以下公式
=iferror(index($c$5:$c$10, small(if($b15=$b$5:$b$10, row($c$5:$c$10)-4, " "), column() -2)), " ")

  • 为了确保作为一个阵列条件,按 键盘 + 移交 + 进入 同时

第3步。

  • 新闻 进入 并使用 自动填表 来看结果。

而最终的结果是这样的。

1.2 在Excel中查询一列中的多个值

出于某种原因,如果你想在列中而不是在行中返回多个值,如图所示。

在截图下面,按照下面的步骤修改公式。

步骤1。

  • 在一些空行中输入唯一的名字列表,在这个例子中,名字被输入到单元格中 E4:G4
  • 在单元格中输入以下公式 E5
=iferror(index($c$5:$c$10, small(if(e$4=$b$5:$b$10, row($c$5:$c$10)-4, " "), row() -4)), " ")

  • 对于一个阵列条件,按 键盘 + 移交 + 进入 .

第2步。

  • 最后,按 进入 并在所需单元格中填入 自动填表 手柄工具。

以下是最终结果。

注意事项 为了使公式能够正确地复制到其他行,请注意查询值的引用、绝对列和相对行,如 $E4.

阅读更多。 如何在Excel中从另一个工作表中查询数值(3种简单方法)

2.在Excel中根据多个标准查询多个值

你已经知道如何在excel中根据一个标准查询多个值。 如果你想根据两个或更多的标准进行多次匹配呢? 举个例子,你有一个数据集,其中包括 亚马逊 现在,你正在寻找某个类别下的产品。

我们将使用下面的数组参数来完成它。

IFERROR(INDEX( 返回范围 , 小(如果(1=((-( lookup_value1 lookup_range1 )) * ( -( lookup_value2 lookup_range2 )),ROW( 返回范围 )-m,"), ROW()-n)),")

在哪里?

查询_value1 是单元格中的第一个查询值 F5

查询_值2 是单元格中的第二个查询值 G5

查询_范围1 是lookup_value1将被搜索的范围( B5:B10 )

查询_范围2 是lookup_value2要搜索的范围( C5:C10 )

返回范围 是指将给出结果的范围。

m 是返回范围内第一个单元格的行号减去 1 .

n 是第一个公式单元格的行号减去 1 .

2.1 查询一个列中的多个匹配项

由于你熟悉数组参数,你可以简单地使用前面两个例子中介绍的公式来检查多个标准,如以下步骤所示。

步骤1。

  • 在细胞中 H5 ,输入以下公式。
=iferror(index($d$5:$d$10, small(if(1=((--($f$5=$b$5:$b$10)) * (--($g$5=$c$5:$c$10)), row($d$5:$d$10)-4,""), row()-4)),""

  • 新闻 键盘 + 移交 + 进入 同时应用公式

结果是,它将显示如下截图中的数值。

第2步。

  • 对其余的单元格应用同样的公式。

请注意。 因为我们的返回范围和公式范围都从第5行开始,在上面的例子中,n和m都等于 "4"。 在你的工作表中,这些数字可能是不同的。

阅读更多。 如何在Excel中使用LOOKUP函数(4个合适的例子)

2.2 在一行中查询多个匹配项

与前面的方法类似,你可能更喜欢水平布局,结果以行为单位返回。 如果你想根据多个标准集拉出多个值,在这种情况下,请遵循以下步骤。

步骤1。

  • 首先,在细胞中 D13 ,输入以下公式。
=iferror(index($d$5:$d$10, small(if(1=((--($b$13=$b$5:$b$10)) * (--($c$13=$c$5:$c$10)), row($d$5:$d$10)-4,""), column()-3) ), "")

  • 要使其形成阵列,按 键盘 + 移交 + 进入 .

第2步。

  • 然后,只要点击 进入 按钮,并使用 自动填表 来填充所需的单元格。

因此,它将显示多个结果,如下面的屏幕截图。

阅读更多。 如何在Excel中用多个条件进行查询(既是AND也是OR类型)?

3.查询并返回一个单元格中的多个值

微软365 订阅后,Excel现在包括了很多更强大的功能和特性(如 XLOOKUP , 动态数组 , 独一无二/过滤 功能等),这在以前的版本中是没有的。

如果你在使用 微软365 (原名为 办公室365 ),本节所描述的方法可以用来查询和返回Excel中一个单元格的多个值。

下面我有一个数据集,在这一列中我有主管人员的姓名 B 以及他们拥有的公司,在列 C .

对于每个人,我想在一组中查找他们拥有哪些公司(用逗号分隔) 在单元格中 F5 .

要做到这一点,应用以下步骤。

步骤1。

  • 首先,在单元格中输入以下公式 F5 .
=textjoin(", ",true,if(e5=$b$5:$b$10,$c$5:$c$10,"))

  • 要作为一个数组公式输入,请点击 键盘 + 移交 + 进入 .

第2步。

  • 然后,点击 进入 来看结果。

阅读更多。 在Excel中可以使用的7种查询方式

4.应用FILTER函数在Excel中查询多个数值

你可以使用 滤波功能 来过滤一组数据,这取决于你为寻求众多数值而给出的标准。

ǞǞǞ 动态数组功能 其结果是一个数据数组,动态地流入一个单元格范围,从你输入公式的单元格开始。

ǞǞǞ 滤波功能 有以下语法。

FILTER(array, include, [if_empty])

在哪里?

数组(必填)。 - 你想过滤的值范围或数组。

包括(必填)。 - 的标准以布尔数组的形式提供( 为真 失败 它的高度(当数据在列中时)或宽度(当数据在行中时)必须与数组参数相同。

If_empty (可选) - 当没有项目符合标准时,这就是要返回的值。

首先,让我们看几个非常简单的例子,以便更好地了解Excel数据过滤公式的工作原理。

4.1 IF不等于

比方说,你想知道不属于埃隆-马斯克的公司名称。 因此,在这里我们的查询值是埃隆-马斯克在 F4 为此,我们将采用以下方法 滤波功能 .

步骤1。

  • 在细胞中 F6 ,输入以下公式的 滤波功能 .
=FILTER(C5:C10,B5:B10F4)

  • 要使其成为一个数组,按 键盘 + 移交 + 进入 .

第2步。

  • 然后,按 进入。
  • 使用 自动填表 处理工具,填写所需的字段。

因此,你将获得如上述屏幕截图所示的结果。

4.2 中位数相同

同样,如果你想知道属于埃隆-马斯克的公司名称,请遵循以下步骤。

步骤1。

  • 在单元格中输入以下公式 F6 ,
=FILTER(C5:C10,B5:B10=F4)

  • 撞击 键盘 + 移交 + 进入 在同一时间。

第2步。

  • 然后,按 进入 来找到匹配的内容。
  • 申请 自动填表 处理工具来填充单元格。

4.3 如果小于

在下面的截图中,显示了一组顶级亿万富翁的净资产数据。 现在,例如,你想知道谁的净资产低于 $150B 要做到这一点,请遵循以下步骤。

步骤1。

  • 首先,在单元格中输入以下公式 F6 ,
=FILTER(C5:C10,B5:B10

  • 要使其成为一个数组公式,按 键盘 + 移交 + 进入 .

第2步。

  • 然后,按 进入 .
  • 最后,应用 自动填表 处理工具来填充单元格。

因此,你将获得多个数值,如上面的截图所示。

4.4 IF 大于

与之前的方法类似,你想知道谁的净资产超过了 $150B ,只要按照下面的步骤就可以了。

步骤1。

  • 起初,在细胞 F6 ,输入以下公式。
=FILTER(C5:C10,B5:B10>F4)

  • 撞击 键盘 + 移交 + 进入 以使其成为一个数组公式。

第2步。

  • 然后,按 进入 .
  • 最后,应用 自动填表 处理工具来填充单元格。

因此,你将获得多个数值,如上面的截图所示。

阅读更多。 如何在Excel中查询表格(8种方法)

5.应用VLOOKUP函数来查询多个数值

在一个场景中,你可能需要再次查看你的数据列表,以检查每个列表中包括哪些信息,以及其中一个列表中缺少哪些信息。 例如,我们想查询哪些演员参加了某个特定的事件。 为了完成这个任务,我们将使用 VLOOKUP功能 .

的语法。 VLOOKUP功能 详见下文。

=VLOOKUP(lookup_value,table_array,col_index_num,[range_lookup] )

在哪里?

查询_价值 是参考值,可以是一个文本,一个数字字符串,或者一个你想参考的单元格的值。

表_数组 是包括其整体在内的整个数据表。 因此,你要找的参考值应该在这个表的第1列,所以Excel可以继续向右走,寻找返回值。

Col_index_num 是找到返回值的列的编号。 这个编号从1开始,随着表中列数的增加而增加。

[range_lookup] 是第四个参数在括号中,因为它不是这个函数工作的必要条件。 在Excel语法中,括号表示一个参数是可选的。 如果你不填写这个值,Excel默认为TRUE(或1),表示你正在寻求与参考值接近的匹配,而不是精确匹配。

请注意。 对于文本返回,使用 为真 因为不建议使用该值。

现在,应用 VLOOKUP功能 遵循以下步骤。

步骤1。

  • 在细胞中 E5 ,输入以下公式。
=IFERROR(VLOOKUP(B5,C:C,1,FALSE), "未参加")

  • 新闻 键盘 + 移交 + 进入 以使其成为阵列。

第2步。

  • 新闻 进入 来看结果。
  • 最后,应用 自动填表 处理工具来填充单元格。

在上面的截图中,你可以看到参加该活动的名单,我们把 "未参加" 对于没有参加的人。

阅读更多。 Excel的LOOKUP与VLOOKUP:有3个例子

总结

最后,我希望这篇文章提供了在Excel中查询多个数值的详细指导。 所有这些程序都应该学会并应用于你的数据集。 看一看练习工作簿,将这些技能用于测试。 由于你的宝贵支持,我们有动力继续制作这样的教程。

如果你有任何问题--请随时问我们。 此外,请随时在下面的部分留下评论。

我们 ǞǞǞ 团队,总是对你的询问作出回应。

与我们保持联系;继续学习。

Hugh West is a highly experienced Excel trainer and analyst with over 10 years of experience in the industry. He holds a Bachelor's degree in Accounting and Finance and a Master's degree in Business Administration. Hugh has a passion for teaching and has developed a unique teaching approach that is easy to follow and understand. His expert knowledge of Excel has helped thousands of students and professionals worldwide improve their skills and excel in their careers. Through his blog, Hugh shares his knowledge with the world, offering free Excel tutorials and online training to help individuals and businesses reach their full potential.