這次,,我們繼續(xù)討論BYROW和BYCOL函數(shù),。 所謂明星產(chǎn)品就是每月中所有達標的產(chǎn)品: 例如,如果將目標定為4000,,所有超過4000的都屬于明星產(chǎn)品,。 從大的概念上,這個問題跟判斷每月是否達標好像是類似的,,都是判斷每月的數(shù)量,。 在篩選達標月份時,我們使用了FILTER函數(shù)和BYCOL函數(shù)的結(jié)合: =FILTER(C2:N2,BYCOL(C3:N16,LAMBDA(c,SUM(c)))>C20) 但是,,這里的問題卻是截然不同的,。 因為,我們需要找多種產(chǎn)品,,并且連接成為一個字符串返回: a,c,d,i,j,n 所以,,我們需要換一個思路。 如果我們將目標放在一列,,比如,,1月: 顯然,我們可以通過篩選得到所有達標產(chǎn)品,, =FILTER(B3:C16,C3:C16>C19) 這個公式也可以寫成: =FILTER(B3:B16,C3:C16>C19) 就可以得到產(chǎn)品名稱了,。 將這個公式與TEXTJOIN函數(shù)結(jié)合使用: =TEXTJOIN(",",TRUE,FILTER(B3:B16,C3:C16>C19)) 這是對于一列的情況,對于多列的情況呢,?對于多列,,當然要逐列完成了,。而逐列完成就需要BYCOL函數(shù)出馬了,。 =BYCOL( C3:N16, LAMBDA(c, TEXTJOIN(",", TRUE, FILTER(B3:B16, c>C19) ) )) 這就是BYCOL函數(shù)的本意。其中LAMBDA函數(shù)中的c就是數(shù)據(jù)中的每一列,。 將問題轉(zhuǎn)個90度??,,看看如何得到各產(chǎn)品銷量最大的月份: 我們可以進行同樣的分析: 我們肯定可以找出每行當中銷量最大的月份: =FILTER(C2:N2,C3:N3=MAX(C3:N3)) 那么只要通過BYROW函數(shù)逐行循環(huán),然后將上面公式中的C3:N3用循環(huán)變量r替換即可: =BYROW(C3:N16,LAMBDA(r,FILTER(C2:N2,r=MAX(r)))) 一切都是那么簡單,! 詳細解釋請看視頻 |
|