[注意] TEXTJOIN函数语法
=TEXTJOIN(分隔符, 忽略空值, 文本1, [文本2], ...)可以将多个文本用分隔符连接成一个字符串。
[目标] 结合IF实现条件拼接
需求:列出所有“优秀”员工的名字,用顿号连接。
数据:A列姓名,B列评级。
=TEXTJOIN("、", TRUE, IF(B2:B100="优秀", A2:A100, ""))注意:这是数组公式,在Excel 2019及以前版本需要按Ctrl+Shift+Enter;Excel 365直接回车。
[详解] 执行过程
- IF函数对B2:B100每个单元格判断是否为“优秀”,是则返回对应的姓名,否则返回空字符串""。
- 得到一组数组:{"张三","","李四","",...}。
- TEXTJOIN用“、”连接,忽略空值,得到“张三、李四”。
[数据] 案例2:多条件拼接
列出销售额大于10000且地区为“北京”的销售员姓名:
=TEXTJOIN("、", TRUE, IF((C2:C100>10000)*(B2:B100="北京"), A2:A100, ""))* 表示AND逻辑。
[工具] 进阶:去重后再拼接
如果姓名可能有重复,需要去重。使用UNIQUE:
=TEXTJOIN("、", TRUE, UNIQUE(IF(B2:B100="优秀", A2:A100, "")))[警告] 注意事项
- TEXTJOIN在Excel 2016及更早版本不可用(需2019或365)。
- 如果连接后的字符总数超过32767,会返回#VALUE!错误。