如何在excel中設置下拉菜單排序

如何讓數據表自動排序?升序或降序,點一下選項它就自動排了 , 不用每次都菜單設置 。
【如何在excel中設置下拉菜單排序】

聽上去要動用 VBA 了?沒錯 VBA 的確是個很好的辦法,但是很多人不是怵嗎,那我就教個公式法,也能實現這效果 。


案例:


下圖 1 是公司銷售人員的獲客統計表 , 請制作一個定義排序規則的下拉菜單,一點就能按要求自動排序 。


效果如下圖 2 所示 。

如何在excel中設置下拉菜單排序

文章插圖
如何在excel中設置下拉菜單排序

文章插圖


解決方案:


1. 先把目標區域和下拉菜單的樣式搭建好 。
如何在excel中設置下拉菜單排序

文章插圖


2. 選中 G2 單元格 --> 選擇菜單欄的“數據”-->“數據驗證”-->“數據驗證”
如何在excel中設置下拉菜單排序

文章插圖


3. 在彈出的對話框中選擇“設置”選項卡,按以下方式設置 --> 點擊“確定”:
  • 允許:選擇“序列”
  • 來源:輸入“升序,降序”

如何在excel中設置下拉菜單排序

文章插圖


下拉菜單已經設置完成 。
如何在excel中設置下拉菜單排序

文章插圖


4. 在 E2 單元格中輸入以下公式:
=IF($G$2="升序",SMALL($B$2:$B$14,ROW(A1)),LARGE($B$2:$B$14,ROW(A1)))


公式釋義:
  • SMALL($B$2:$B$14,ROW(A1)):選出區域 $B$2:$B$14 中第 ROW(A1) 小的單元格;隨著公式下拉,ROW(A1) 會逐行遞增,從而實現從小到大排序;
  • LARGE($B$2:$B$14,ROW(A1)):選出區域 $B$2:$B$14 中第 ROW(A1) 大的單元格;
  • if(...):根據下拉菜單的文字 , 分別執行升序或降序排列

如何在excel中設置下拉菜單排序

文章插圖
如何在excel中設置下拉菜單排序

文章插圖


5. 將 C 列設置為第一個輔助列,在 C2 單元格中輸入以下公式:
=B2&COUNTIF($B$2:B2,B2)


公式釋義:
  • COUNTIF($B$2:B2,B2):統計從 B2 開始到當前行 , B2 單元格總共出現了幾次
  • B2$...:將 B2 及其出現的次數連接起來,從而變成一個唯一值;這樣即使獲客數有重復,也能匹配到不同的姓名

如何在excel中設置下拉菜單排序

文章插圖
如何在excel中設置下拉菜單排序

文章插圖


6. 將 F 列設置為第二個輔助列,在 F2 單元格中輸入以下公式:
=E2&COUNTIF($E$2:E2,E2)


公式釋義同上 。
如何在excel中設置下拉菜單排序

文章插圖
如何在excel中設置下拉菜單排序

文章插圖


7. 在 D2 單元格中輸入以下公式:
=INDEX(A:A,MATCH(F2,C:C,0))


公式釋義:
  • MATCH(F2,C:C,0):找出 F2 在 C 列序列中出現的位置順序 , 是一個數值;
  • INDEX(A:A,...):匹配出 A 列中對應位置的值

如何在excel中設置下拉菜單排序

文章插圖


8. 選中 C2:F2 區域向下拖動 , 從而復制公式 。
如何在excel中設置下拉菜單排序

文章插圖


9. 將 C 和 F 列的字體設置為白色 。
如何在excel中設置下拉菜單排序

文章插圖


現在選擇下拉菜單的選項,第二個數據表就會自動根據要求排序 。
如何在excel中設置下拉菜單排序

文章插圖


接下來我們再加上數據條,這樣可以使得數據差距更加可視化 。


10. 選中 E2:E14 區域 --> 選擇菜單欄的“開始”-->“條件格式”-->“數據條”--> 選擇所需的數據條樣式
如何在excel中設置下拉菜單排序

文章插圖
如何在excel中設置下拉菜單排序

文章插圖


這是選擇下拉菜單的動態效果 。
如何在excel中設置下拉菜單排序

文章插圖


很多同學會覺得 Excel 單個案例講解有些碎片化,初學者未必能完全理解和掌握 。不少同學都希望有一套完整的圖文教學,從最基礎的概念開始,一步步由簡入繁、從入門到精通,系統化地講解 Excel 的各個知識點 。
現在終于有了,以下專欄,從最基礎的操作和概念講起,用生動、有趣的案例帶大家逐一掌握 Excel 的操作技巧、快捷鍵大全、函數公式、數據透視表、圖表、打印技巧等……學完全本,你也能成為 Excel 高手 。