我想为我的锦标赛做一张桌子。我为一些球员和他们的联赛创造了一张桌子。

我想按联赛制作相亲表,像那样

我要用谷歌电子表格来做这件事。我知道我不能在"QUERY()“函数中使用"JOIN”。似乎我需要使用"ArrayFormula()“和"VLOOKUP()”函数,但经过几个小时的粘贴尝试之后,我失败了。
如果你们中的任何人能帮我,那就太棒了!
下面是一个包含数据的googlesheet:https://docs.google.com/spreadsheets/d/19ThnwVme8f3Ee730w8lTAyEJE9YdxzLEfox8arl5Q4o/edit?usp=sharing
非常感谢,我希望我的问题很清楚:)
编辑:似乎我们受到REPT()函数中字符数量的限制。如果除了答案或“解决办法”之外,还有其他解决方案,可以随意分享:)
发布于 2021-01-07 00:05:49
尝试:
=ARRAYFORMULA(UNIQUE(QUERY(SPLIT(IF(
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))<
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"));
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))&"♠"&
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"));
FLATTEN(SPLIT(CONCATENATE(REPT(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"; COUNTA(A3:A))); "♦"))&"♠"&
FLATTEN(SPLIT(REPT(CONCATENATE(IF(A3:A="";;A3:A&"♠"&B3:B&"♠"&C3:C)&"♦"); COUNTA(A3:A)); "♦"))); "♠");
"select Col1,Col2,Col4,Col5,Col6
where Col1 <> Col4
and Col3 = Col6")))

发布于 2021-01-16 00:13:59
无限:
=INDEX(QUERY(SPLIT(FLATTEN(IF(
ROW(INDIRECT("A1:A"&COUNTA(A3:A)))<=TRANSPOSE(
ROW(INDIRECT("A1:A"&COUNTA(A3:A))));;
FILTER(A3:A&"♦"&B3:B&"♦"&C3:C; A3:A<>"")&"♦"&TRANSPOSE(
FILTER(A3:A&"♦"&B3:B&"♦"&C3:C; A3:A<>"")))); "♦");
"select Col4,Col5,Col1,Col2,Col6
where Col2 is not null
and Col3 = Col6
order by Col4"; 0))

https://stackoverflow.com/questions/65600837
复制相似问题