您当前的位置:首页 > 圈子

vlookup多个结果都体现在一个单元格

2024-10-23 22:17:00 作者:石家庄人才网

石家庄人才网今天给大家分享《vlookup多个结果都体现在一个单元格》,石家庄人才网小编对内容进行了深度展开编辑,希望通过本文能为您带来解惑。

在 Excel 中,VLOOKUP 函数是一个非常常用的查找函数,它可以根据给定的值在一个表格区域中查找匹配的值并返回对应的内容。但是,VLOOKUP 函数默认情况下只能返回查找到的第一个匹配值,如果需要将多个匹配结果都体现在一个单元格中,则需要借助其他函数或方法来实现。

下面介绍几种常用的方法:

方法一:使用 IF 函数和 SMALL 函数

该方法的基本思路是使用 IF 函数判断是否存在多个匹配值,如果存在,则使用 SMALL 函数依次返回每个匹配值,并使用连接符将它们连接起来。

例如,假设要在一个名为“数据源”的表格区域中查找姓名为“张三”的所有成绩,并将它们显示在单元格 A1 中,可以使用以下公式:

=IF(COUNTIF(数据源!A:A,"张三")>1,TEXTJOIN(",",TRUE,IF(数据源!A:A="张三",数据源!B:B,"")),VLOOKUP("张三",数据源,2,FALSE))

其中,

vlookup多个结果都体现在一个单元格

COUNTIF 函数用于统计姓名为“张三”的记录数,如果记录数大于 1,则说明存在多个匹配值;TEXTJOIN 函数用于将多个值连接起来,第一个参数指定连接符,第二个参数指定是否忽略空值,第三个参数是一个数组,表示要连接的值;SMALL 函数用于返回数组中的第 k 小值,第一个参数是数组,第二个参数是 k 的值。

方法二:使用数组公式

数组公式是一种高级 Excel 公式,它可以对一组值进行计算并返回一个结果数组。可以使用数组公式来实现 VLOOKUP 函数的多值返回。

例如,假设要在一个名为“数据源”的表格区域中查找姓名为“张三”的所有成绩,并将它们显示在单元格 A1 中,可以使用以下数组公式:

=TEXTJOIN(",",TRUE,IF(数据源!A:A="张三",数据源!B:B,""))

输入公式后,需要按下 Ctrl+Shift+Enter 键才能将其转换为数组公式。该公式的原理是使用 IF 函数判断每个单元格是否等于“张三”,如果是,则返回对应的成绩,否则返回空值,然后使用 TEXTJOIN 函数将所有非空值连接起来。

方法三:使用 Power Query

Power Query 是 Excel 中的一个数据处理工具,它可以从多个数据源中提取数据、转换数据和加载数据。可以使用 Power Query 来实现 VLOOKUP 函数的多值返回。

步骤如下:

1. 选择数据源表格区域,点击“数据”选项卡,然后点击“从表格/区域”。

2. 在“Power Query 编辑器”中,点击“添加列”>“自定义列”,输入以下公式:

=Text.Combine(List.Transform(Table.SelectRows(#"更改的类型", each [姓名]="张三")[成绩], Text.From), ",")

该公式的原理是先使用 Table.SelectRows 函数筛选出姓名为“张三”的所有记录,然后使用 List.Transform 函数将成绩列转换为文本值,最后使用 Text.Combine 函数将所有文本值连接起来。

3. 点击“关闭并上载”,将查询结果加载到 Excel 工作表中。

以上是几种常用的 VLOOKUP 多值返回方法,石家庄人才网小编建议您根据实际情况选择合适的方法。

石家庄人才网小编对《vlookup多个结果都体现在一个单元格》内容分享到这里,如果有相关疑问请在本站留言。

版权声明:《vlookup多个结果都体现在一个单元格》来自【石家庄人才网】收集整理于网络,不代表本站立场,所有图片文章版权属于原作者,如有侵略,联系删除。
https://www.ymil.cn/quanzi/24784.html