Excel-依指定欄位自動排序成績表

在 Excel 的工作表裡有一個成績表,你想建立一個依指定欄位「自動」排序成績表?

如下圖,在下拉式清單中選取一個欄位,成績表就自動依這個欄位排序。

建立自動排序的成績表,就不用重覆手動操作排序了。

Excel-依指定欄位自動排序成績表

【設計與解析】

1. 依欄位定義名稱

選取儲存格A4:G24,按 Ctrl+Shfit+F3 鍵,勾選「頂端列」,定義名稱:座號、國文、英文、數學、社會、自然、總分。

Excel-依指定欄位自動排序成績表

2. 設計下拉式清單

(1) 選取儲存格J3。

(2) 選取「資料/資料工具」功能表裡的「資料驗證」。

(3) 在儲存格內允許選取:清單。

(4) 在「來源」方塊中設定「=$A$4:$G$4」。

Excel-依指定欄位自動排序成績表

3. 輸入排序公式

儲存格I5:=SORTBY(A5:G24,INDIRECT(J3),-1)

(1) INDIRECT(J3)

利用 INDIRECT 函數將儲存格J3內容的文字轉換為儲存格

(2) SORTBY(A5:G24,INDIRECT(J3),-1)

在 SORTBY 函數中利用 INDIRECT(J3) 所指定的欄位內容(已定義好名稱)進行排序。

參數「-1」表示進行遞減排序。

 

如此,只要選取不同欄位即可進行依該欄位排序。

Excel-依指定欄位自動排序成績表

 

如果,你想在公式中控制「遞增/遞減」:

Excel-依指定欄位自動排序成績表

儲存格I5:=SORTBY(A5:G24,INDIRECT(J3),(K3="遞增")*2-1)

(1) K3="遞增" 會傳回 TRUE/FALSE=1/0

(2) (K3="遞增")*2 會傳回 2/0

(3) (K3="遞增")*2-1 會傳回 1/-1

用以控制遞增(1)或遞減(-1)。

Excel-依指定欄位自動排序成績表

Excel-依指定欄位自動排序成績表

【參考資料】

 SORTBY 函數參考微軟提供的說明網頁:SORTBY 函數

【延伸學習】

 

學不完.教不停.用不盡文章列表

arrow
arrow

    vincent 發表在 痞客邦 留言(0) 人氣()