Excel 前 10 名銷售人員

Excel 前 10 名銷售人員

我有一個電子表格,其中包含銷售人員的銷售情況

   A      B             C        D
1  ID    Name        Product  Sales($)   
2  1    John Smith   Toaster   250
3  2    Dina Caan    Kettle    450
4  1    John Smith   Kettle    450
5  1    John Smith   Kettle    250
6  2    Dina Caan    Toaster   250
7  3    Peter Hues   TV        5400
8  3    Peter Hues   Radio     480
9  2    Dina Caan    Radio     100
10 4    Ralph Do     TV        890
11 4    Ralph Do     Radio     100
12 5    Ian Poe      Watch     750
13 6    Tina Hood    TV        450 
14 7    Peter Maan   Watch      99

我想要 F 中基於公式的表格,按總銷售額顯示前 n(例如 3)名銷售人員,標題 ID 名稱 TotalSales($)

我可以使用資料透視表輕鬆地完成此操作,然後過濾前 n 個,但在這種情況下,我想使用公式來完成此操作。

編輯:從結果表中刪除產品。

答案1

使用 Excel 的新動態數組公式,您無需建立資料透視表即可獲得結果,但它需要一些輔助單元格。考慮以下螢幕截圖:

在此輸入影像描述

F2中的公式是 =UNIQUE(B2:B14)並且它沒有被複製下來。

G2 中的公式=SUMIFS($D$2:$D$14,$B$2:$B$14,UNIQUE(B2:B14))不會被複製下來。

以總銷售額排名的前三名銷售人員可以用 I2 中的公式得出,=INDEX(SORTBY(F2#,G2#,-1),{1;2;3})也不能複製下來。

動態數組「溢出」只要公式需要,並且引用動態數組的公式單元格將繼承該溢出。這意味著,如果下次有新的銷售人員,您無需更新 F 列中的唯一名稱清單。

答案2

要獲得最高銷量,請使用以下數組公式:

=LARGE(MODE.MULT(IF(MATCH($B$2:$B$14,B:B,0)=ROW($B$2:$B$14),SUMIFS(D:D,B:B,$B$2:$B$14)*{1,1})),ROW(1:1))

作為陣列公式,退出編輯模式時必須使用 Ctrl-Shift-Enter 而不是 Enter 進行確認。

為了取得 ID 和名稱,我們可以將其與另一個陣列公式結合使用:

=INDEX(A:A,MATCH($I2,SUMIFS($D:$D,$B:$B,$B$2:$B$14),0)+1)

還需要 Ctrl-Shift-Enter 然後上下複製。

在此輸入影像描述

相關內容