英文:
Google Sheets concatenate every columnA values with every columnB values
问题
你可以使用Excel中的公式来实现这个目标。你可以在“Result”列的第一行(例如第2行)输入以下公式,然后将其拖动填充到其他单元格中:
=INDEX($A$2:$A$4, INT((ROW()-ROW($B$2))/COUNTA($B$2:$B$4))+1) & INDEX($B$2:$B$4, MOD(ROW()-ROW($B$2), COUNTA($B$2:$B$4))+1)
这将根据你的数据范围自动创建所需的组合。确保调整公式中的单元格引用以匹配你的数据的实际范围。
英文:
I have this:
Column A | Column B |
---|---|
A1 | B1 |
A2 | B2 |
A3 | B3 |
How do I concatenate every columnA values with every columnB values with a formula (or script) to have this:
Result |
---|
A1B1 |
A1B2 |
A1B3 |
A2B1 |
A2B2 |
A2B3 |
A3B1 |
A3B2 |
A3B3 |
I did it manually with "&" but couldn't manage to find the formula
答案1
得分: 0
=INDEX(FLATTEN(A1:A3&TRANSPOSE(B1:B3)))
=INDEX(TOCOL(TOCOL(A:A,1)&TOROW(B:B,1)))
英文:
You may try:
=INDEX(FLATTEN(A1:A3&TRANSPOSE(B1:B3)))
Incase the new functions have rolled out for you, try:
=INDEX(TOCOL(TOCOL(A:A,1)&TOROW(B:B,1)))
答案2
得分: 0
使用 filter()
来获取非空值,transpose()
来生成所有组合,最后使用 flatten()
来将结果放在一列中,就像这样:
=arrayformula( flatten( filter(A2:A, len(A2:A)) & transpose(filter(B2:B, len(B2:B))) ) )
英文:
Use filter()
to get just the non-blank values, transpose()
to build all combinations, and finally flatten()
to get the results in one column, like this:
=arrayformula( flatten( filter(A2:A, len(A2:A)) & transpose(filter(B2:B, len(B2:B))) ) )
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论