我有一張債權人表,在總價列旁邊的每個條目上都有一個復選框。當我收到付款時,我選中復選框。現在我正在嘗試將所有未付債權人查詢到另一張紙上,但當復選框位于另一行時,我不知道如何查詢債權人姓名。我可以查詢相同的行條目。這是它的樣子
| 姓名 | 專案 | 收到付款(復選框) |
|---|---|---|
| 杰克 | 籌碼 | 真的 |
| 喬 | 啤酒 | 錯誤的 |
| 卡特琳娜 | 籌碼 | |
| 水果 | 錯誤的 | |
| 鮑勃 | 可樂 | |
| 蔬菜 | 真的 | |
| 阿德里安 | 籌碼 | |
| 啤酒 | 錯誤的 |
我試過QUERY。但沒有幫助。它只顯示相同的行專案。這里發生的情況是第一列客戶在第二列購買商品,如果客戶付款,則第三列變為 TRUE,如果是信用,則為 FALSE。如果客戶購買超過 1 件商品,則 TRUE 值將位于第二列的最后一項旁邊。所以我想要實作的是,我正在嘗試查詢或以某種方式過濾那些尚未付款的客戶。–
uj5u.com熱心網友回復:
我不完全清楚你需要什么,但如果它是 col1 中的值重復向下,查詢拉出 col 3 為假的資料,然后試試這個:
=index(query({if(B:B<>"",vlookup(row(A:A),query({row(A:A),A:A},"where Col2 is not null",0),2,1),),B:C},"select Col1,Col2 where Col3 = false",1))
如果您只需要名稱,您可以將查詢更改為僅選擇 Col1。

uj5u.com熱心網友回復:
如果表格被格式化會更好第一范式. 但是在這里,對于每個名稱(使用MAP),我們使用XMATCH通配符匹配和獲得每組對應的最后一個復選框OFFSET。有一次,我們得到了復選框,我們用它FILTER來過濾掉不需要的東西。
=FILTER(A2:A9,
MAP(C2:C9,A2:A9,
LAMBDA(checkbox,name,
IF(OR(checkbox,name=""),
,
NOT(IFNA(
OFFSET(checkbox,
XMATCH("*",OFFSET(name,1,0,5,1),2)-1,0
),
C9)
)
)
)
)
)
由于
XMATCH找不到最后一個復選框,因為沒有對應的值,我們C9手動參考最后一個復選框。對于每個名稱,
OFFSET(...,5)獲取 5 行以獲取每組的最后一個復選框。如果每組最多有 10 個專案,則必須更改5為10。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/524637.html
標籤:谷歌表格谷歌表格公式
