昨天蘭色推播的多列查詢公式,忽略了filter篩選後的順序,導致公式結果錯誤,今天特糾正一下。
原公式:
=FILTER(CHOOSECOLS(A2:E8,MATCH(TOCOL(H1:P1,1),1:1,0)),COUNTIF(G2:G11,C2:C8)>0)
解決這個問題的思路是把生成的結果按G列排序。按G 列排序,先列出公式再解釋
= DROP(LET(x, FILTER(CHOOSECOLS(A2:E8,MATCH(TOCOL(G1:P1,1),1:1,0)),COUNTIF(G2:G11,C2:C8)>0) , SORTBY(x,MATCH(CHOOSECOLS(x,1),G:G,0) )),,1)
篩選後的結果
=FILTER(CHOOSECOLS(A2:E8,MATCH(TOCOL(G1:P1,1),1:1,0)),COUNTIF(G2:G11,C2:C8)>0)
為了讓公式更簡捷,這裏使用了LET函式,x在後面代替上面的篩選結果運算式
= LET(x,篩選結果部份
查詢篩選結果A列在G列的位置,然後讓篩選結果根據查詢結果排序
SORTBY(x,MATCH(CHOOSECOLS(x,1),G:G,0)
排序後因為多了一列姓名,所以用drop把第一列刪除掉
DROP(篩選後的結果,,1)
最後看一下動態結果:
本周日的課開始預約了