我正在尋找構建一個公式,該公式將檢查列是否為真值,如果為真,則回傳第一個列名,按順序...
下面是我一直試圖建立的公式,但它沒有按預期作業,盡管我認為我很接近。
=ARRAYFORMULA(IF(HLOOKUP($A16,{Sheet1!$B$2:$E$5,Sheet2!$B$8:$E$11},{3,4,5},0)=TRUE,{Sheet2!$A$3:$A$5,Sheet1!$A$3:$A5,""))
讓我舉例說明。作業表 1 和作業表 2 包含名稱和誰擁有什么(復選框專案)。使用單元格 B16 中的公式,該公式將使用所有在查找值 (A:A) 中包含 TRUE 值的名稱填充右側和下方。

上面的圖片是手動輸入的,公式根本不起作用。
請幫忙!
編輯:
演示表
uj5u.com熱心網友回復:
這是另一種方法(類似于 player0 的,但不同到足以保證單獨的答案:
=ArrayFormula(IFERROR(TRIM(SPLIT(VLOOKUP(FILTER(A3:A,A3:A<>""),REGEXREPLACE(SPLIT(FLATTEN(QUERY(QUERY(SPLIT(QUERY(FLATTEN({IF(Sheet1!B2:E<>TRUE,,Sheet1!B1:E1&"~|"&Sheet1!A2:A&",");IF(Sheet2!B2:E<>TRUE,,Sheet2!B1:E1&"~|"&Sheet2!A2:A&",")}),"Select * WHERE Col1 Is Not Null"),"|"), "Select MAX(Col2) where Col2 IS NOT NULL GROUP BY Col2 PIVOT Col1"),, 9^9)),"~"),"[,\s] $",""),2,FALSE),","))))
我已將其添加到您的電子表格中的新作業表中(“Erik 幫助”)。
如果您要包含兩張以上的作業表,只需找到公式的這一部分并繼續該模式:
{ IF(Sheet1!B2:E<>TRUE,,Sheet1!B1:E1&"~|"&Sheet1!A2:A&","); IF(Sheet2!B2:E<>TRUE,,Sheet2!B1:E1&"~|"&Sheet2!A2:A&",") }
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/325144.html
標籤:谷歌表格
