VIP學員的問題,要將資金短缺(金額<=0)開始年、所有年都查找出來。

問題並不難,在於思路,跟盧子來看下。

關於查找,使用最頻繁的莫過於LOOKUP函數的經典查找模式,就是查找最後一個對應的值。資金短缺結束年是2026。
=LOOKUP(1,0/(C2:I2<=0),C1:I1)

語法:
=LOOKUP(1,0/(查找區域=查找值),返回區域)

其實,這個語法,其他函數也能使用,比如MATCH,返回區域第6列。下面的所有公式,低版本記得按Ctrl+Shift+Enter三鍵結束。
=MATCH(1,0/(C2:I2<=0))

再嵌套INDEX函數,就返回對應的年。
=INDEX(C1:I1,MATCH(1,0/(C2:I2<=0)))

其實MATCH還有精確的查找法,用0查找0,第三參數也寫0,這樣就可以返回首次的位置。再嵌套INDEX函數,就返回對應的2024年。
=INDEX(C1:I1,MATCH(0,0/(C2:I2<=0),0))

再繼續拓展,XLOOKUP函數也支持這個套路。
=XLOOKUP(0,0/(C2:I2<=0),C1:I1)

最後,合併所有短缺年,用TEXTJOIN函數。
=TEXTJOIN(",",1,IF(C2:I2<=0,C1:I1,""))

如果對TEXTJOIN函數不熟,可以參考文章:你會TEXTJOIN函數嗎?

其實,這個套路除了查找函數可以用,求和函數也可以用,比如用SUMPRODUCT求小於零的金額之和。
=SUMPRODUCT((C2:I2<0)*C2:I2)

這個套路如果研究透了,能夠隨意變形,絕大多數的查找問題都可以解決。

你還知道什麼厲害的函數套路?

相關文章