分享

TEXTJOIN函数依据条件合并内容!

 无我无人斋 2024-11-19

职场实例

小伙伴们大家好,今天我们来讲解一个Excel中使用频率非常高应用范围非常广的函数:TEXTJOIN函数TEXTJOIN函数是合并类函数中的王炸函数,对于提升职场办公效率起到了非常重要的桥梁作用。

如下图所示:

A7:B14单元格区域为原始数据表格,是销售的订单号对应的货品名称对照表,A列为销售的货品名称,B列为销售的货品所对应的订单号,也就是说相同的订单号可能对应多个销售的货品名称。

现在我们想要将满足A2、A3、A4单元格,即满足订单号230824、230825、230819各自分别所对应的所有销售货品名称合并在B列单元格中,并且用逗号对不同的货品名称进行间隔,效果如B2:B4单元格区域所示。

TEXTJOIN函数依据条件合并内容!

2

解题思路

函数基本含义:

TEXTJOIN函数用来将两个或两个以上的文本字符串合并,并以指定的分隔符分开。如果省略分隔符,直接合并个文本字符串。

函数结构:

函数公式:

=TEXTJOIN(delimiter, ignore_empty, text1, [text2, ...]) 

参数释义: 

Delimiter(必填):分隔符,用英文双引号引用,内容可以为空。 

ignore_empty(必填):忽略空文本选项。如果为 TRUE,则忽略空白单元格。 

text1(必填):要合并的文本项、文本字符串或字符串数组。 

text2(选填):要合并的其他文本项,最多可以包含 252 个文本参数 text,且每个参数可以是一个文本字符串或字符串数组。 

简单举例: 

=TEXTJOIN(",",TRUE, "Excel", "情报局") 

结果为:“Excel,情报局

单纯的概念描述有些抽象,下面我们就来看一下具体操作方法。

首先我们先来做一个条件判断,在B2单元格输入IF函数:

=IF($B$8:$B$14=A2,$A$8:$A$14,"")

逻辑思路很基础,是Excel的入门函数思想。

如果B8:B14(绝对引用)此区域内的任意一个单元格等于A2单元格(订单号230824)的话,我们就让它返回A8:A14(绝对引用)区域内对应的货品名称,否则返回空值即可。返回对应的全部的货品名称是以数组的方式存储呈现的。因为IF函数的第一参数是B8:B14这个范围等于A2单元格,所以会返回数组。

选中公式按下F9键即可查看数组元素

={"苹果";"";"";"荔枝";"";"";"香瓜"}

我们发现但凡满足订单号230824的话,就会返回A8:A14区域内对应行的“苹果”、“荔枝”、“香瓜”;而对应不到的则会相对的返回空值,即用双引号“”表示空值,所有返回元素用分号隔开放置到了一个大括号内,即我们常说的内存数组格式中。

TEXTJOIN函数依据条件合并内容!

然后我们在IF函数前方加上TEXTJOIN函数:

=TEXTJOIN(",",0,IF($B$8:$B$14=A2,$A$8:$A$14,""))

Crrl+Shift+回车键结束公式。

即用第一参数分隔符号逗号,将第三参数IF函数返回的内存数组{"苹果";"";"";"荔枝";"";"";"香瓜"}中的所有元素进行连接。

我们注意到:

TEXTJOIN函数的第2参数我们用的是0,即FALSE,表示不要忽略空值进行连接,这样就会将数组中的所有空值元素也进行了合并,返回了很多逗号,如“苹果,,,荔枝,,,香瓜”。

TEXTJOIN函数依据条件合并内容!

所以本例中我们需要忽略空值数据进行合并,我们需要将TEXTJOIN函数的第二参数1改成0,即TRUE:

=TEXTJOIN(",",1,IF($B$8:$B$14=A2,$A$8:$A$14,""))

Crrl+Shift+回车键,结束公式后即可得到正常的结果:

苹果,荔枝,香瓜”。

所以我们需要对TEXTJOIN函数第二参数进行深刻的理解。

TEXTJOIN函数依据条件合并内容!

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多