如何列出 Excel/Sheet 中两个分号分隔列的所有值组合?

问题描述 投票:0回答:1

这可能是一个非常初学者的问题,但在搜索失败后,我决定寻求帮助,尽管我感觉答案触手可及。

我正在 Excel/Sheets 中处理术语表,其中每行包含两列中的相关术语列表:A 列(英语术语)和 B 列(西班牙语术语)。每列中的术语用分号分隔。例如:

英语 西班牙语
一个; C; D
e F; G
h;我 J

我需要在不同的行中输出同一行中 A 列和 B 列项的所有可能组合(如笛卡尔积)。上面例子的结果应该是这样的:

英语 西班牙语
a C
a D
b C
b D
e F
e G
h J
J

你能帮我用公式或任何其他方法在 Excel 中实现这一目标吗?

例如,我尝试了 SPLIT 函数,它将文本围绕指定的字符或字符串进行分割,并将每个片段放入行中的单独单元格中,但这不是我真正想要的,并且手动操作会非常繁琐重新排列数百或数千个值。

excel google-sheets excel-formula google-sheets-formula combinations
1个回答
0
投票

在 Google 表格中:

=let( 
  get_, lambda(a, filter(a, len(A2:A), len(B2:B))), 
  pairs, map(get_(A2:A), get_(B2:B), lambda(en, es, 
    torow(sort(split(en, "; ", false) & "→" & tocol(split(es, "; ", false)))) 
  )), 
  sort(iferror(split(tocol(pairs), "→"))) 
)

screenshot

让(), lambda(), 地图(), 过滤器()如果错误()托罗()tocol(), 分割()排序()

© www.soinside.com 2019 - 2024. All rights reserved.