我需要從重復的列標題中第一次出現,如下所示:

解決方法是將所有相同的列分組并使用IF空白,然后獲取下一列公式。但是,如果在中間添加一列或以某種方式重新排列列,則效率似乎不高。所以我能想到的最快方法是從等于列標題的范圍中獲取第一次出現。
uj5u.com熱心網友回復:
第一欄:
=INDEX(FILTER(A1:E5, A1:E1="name"),,1)
第一個非空:
=INDEX(IFERROR(SPLIT(TRIM(FLATTEN(QUERY(TRANSPOSE(
FILTER(A1:E5, A1:E1="name")),,9^9))), " ")),,1)
整張桌子:
={INDEX(IFERROR(SPLIT(TRIM(FLATTEN(QUERY(TRANSPOSE(FILTER(A1:E5, A1:E1="name")),,9^9))), " ")),,1), B1:B5,
INDEX(IFERROR(SPLIT(TRIM(FLATTEN(QUERY(TRANSPOSE(FILTER(A1:E5, A1:E1="email")),,9^9))), " ")),,1)}


更新:
=INDEX(LAMBDA(a, h, x, {
INDEX(IFERROR(SPLIT(TRIM(FLATTEN(QUERY(TRANSPOSE(FILTER(a, h="name")),,9^9))), " ")),,1), x,
INDEX(IFERROR(SPLIT(TRIM(FLATTEN(QUERY(TRANSPOSE(FILTER(a, h="email")),,9^9))), " ")),,1)})
(SUBSTITUTE(A1:E10, " ", CHAR(9)), A1:E1, B1:B10))

uj5u.com熱心網友回復:
我看到你已經接受了一個答案,但以防萬一你或任何人需要更多列,你可以使用這個公式:
=query({A1:Z},"Select Col"&JOIN(", Col",byrow(filter(unique(transpose(A1:1)),unique(transpose(A1:1))<>""),lambda(each,match(each,A1:1,0)))),true)
這將找到所有唯一標頭的首次出現并進行查詢;)

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/537036.html
上一篇:谷歌表格讓空單元格彼此相鄰
下一篇:矩陣中的多個搜索鍵
