Excel中如何使用公式生成分隔符分隔的单元格值组合
Excel 两列多分隔符值生成排列组合公式方案
仅支持 Excel 365、Excel 2021 及以上带动态数组特性的版本,无需插件、无需手动拖拽,公式自动溢出结果。
基础单行列公式
假设带分隔符的内容分别存放在A1、B1单元格,默认分隔符为英文逗号,可根据实际情况调整分隔符参数:
=LET( a,TEXTSPLIT(A1,","), b,TEXTSPLIT(B1,","), aa,TOCOL(IF(SEQUENCE(,ROWS(b)),a)), bb,TOROW(b), aa&bb )
- 如果需要在两个组合值之间加分隔符(比如中间加横杠),把最后一行的
aa&bb改成aa&"-"&bb即可 - 如果你的内容分隔符是中文顿号、空格、斜杠等符号,只需要把
TEXTSPLIT函数里的第二个参数","替换成对应的分隔符即可 - 输入公式后直接回车,所有排列组合结果会自动向下溢出填充,不需要手动拖拽公式
批量多行处理公式
如果需要批量处理A1到B10范围内的多行内容,使用以下公式可以逐行计算、并把每行的组合结果用逗号拼接后输出在对应行:
=BYROW(A1:B10,LAMBDA(x,LET( a,TEXTSPLIT(INDEX(x,1),","), b,TEXTSPLIT(INDEX(x,2),","), aa,TOCOL(IF(SEQUENCE(,ROWS(b)),a)), bb,TOROW(b), TEXTJOIN(",",,aa&bb) )))
效果示例
输入内容:
- A1值:
苹果,香蕉,橘子 - B1值:
红色,黄色
公式输出结果:
苹果红色 苹果黄色 香蕉红色 香蕉黄色 橘子红色 橘子黄色
低版本兼容说明:如果你使用的是2019及更早版本的Excel,没有动态数组和TEXTSPLIT函数,需要先把单元格内容按分隔符拆分成多行,再用笛卡尔积的方式组合,或者使用VBA宏实现。
内容的提问来源于stack exchange,提问作者Vishnu Vardhan Reddy
相关产品推荐
相关产品推荐

