You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Excel:基于双向配对条件执行TEXTJOIN合并内容的实现求助

解决方案:用TEXTJOIN+数组公式实现双向配对的信号合并

核心公式(适用于Excel 2019及以后版本)

假设表1数据范围为A2:C1000(可根据实际行数调整),表2当前配对在E3和F3单元格,G3的公式如下:

=TEXTJOIN(", ", TRUE, IF( ((B2:B1000=E3)*(C2:C1000=F3))+((B2:B1000=F3)*(C2:C1000=E3)), A2:A1000, ""))
  • 按回车即可自动计算,无需额外操作。

旧版Excel(2016及更早)适配

输入公式后,需要按下Ctrl+Shift+Enter以数组公式模式执行,公式会自动包裹大括号{}(不要手动输入)。

公式拆解

  • ((B2:B1000=E3)*(C2:C1000=F3)):匹配E3向F3发送信号的行
  • ((B2:B1000=F3)*(C2:C1000=E3)):匹配F3向E3发送信号的行
  • 两者相加表示只要满足任一方向的配对,就标记为有效行
  • IF函数提取有效行对应的A列信号内容,无效行返回空文本
  • TEXTJOIN用指定分隔符(这里是, )合并所有非空信号,TRUE参数自动忽略空值

优化建议

  1. 动态范围适配:将表1转为Excel结构化表格(选中数据按Ctrl+T),命名为Table1,公式可简化为:
=TEXTJOIN(", ", TRUE, IF( ((Table1[赠送者]=E3)*(Table1[接收者]=F3))+((Table1[赠送者]=F3)*(Table1[接收者]=E3)), Table1[交换的礼物], ""))

表格行数变化时公式会自动更新,无需手动调整范围。
2. 自定义分隔符:如需用换行分隔,将", "替换为CHAR(10),并设置单元格格式为「自动换行」。

内容的提问来源于stack exchange,提问作者Steven Bunker

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 15:10:40