且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

转置多列中的唯一值

更新时间:2022-10-22 18:13:41

UNIQUE works only in one dimension (row or column)

=QUERY(UNIQUE({A:A;B:B;C:C}), "where Col1 is not null", 0)


=ARRAYFORMULA(SPLIT(REGEXREPLACE(SUBSTITUTE(TRIM(TRANSPOSE(QUERY(TRANSPOSE({QUERY(QUERY(
 UNIQUE(SPLIT(TRANSPOSE(SPLIT(TRIM(QUERY(TRANSPOSE(QUERY(TRANSPOSE(
 IF(LEN(A2:A), "♠"&A2:A&"♦"&B2:D, )),,999^99)),,999^99)), "♠")), "♦")),
 "select Col1, count(Col1) where Col1 is not null group by Col1 pivot Col2", 0),
 "select Col1 offset 1",0),
 IF(QUERY(QUERY(UNIQUE(SPLIT(TRANSPOSE(SPLIT(TRIM(QUERY(TRANSPOSE(QUERY(TRANSPOSE(
 IF(LEN(A2:A), "♠"&A2:A&"♦"&B2:D, )),,999^99)),,999^99)), "♠")), "♦")),
 "select count(Col1) where Col1 is not null group by Col1 pivot Col2", 0), "offset 1",0)<>"", 
 QUERY(QUERY(UNIQUE(SPLIT(TRANSPOSE(SPLIT(TRIM(QUERY(TRANSPOSE(QUERY(TRANSPOSE(
 IF(LEN(A2:A), "♠"&A2:A&"♦♀"&B2:D&",", )),,999^99)),,999^99)), "♠")), "♦")),
 "select count(Col1) where Col1 is not null group by Col1 pivot Col2", 0), "limit 0",1),)})
 ,,999^99))), ", ♀", ", "), ",$", ), "♀"))