您可以在 Power Query 中依一個資料行或多個資料行排序數據表。 例如,使用下表,其中包含名為 [競爭]、 [競爭對手] 和 [位置] 的數據行。
包含 Competition、Competitor 和 Position 欄位的表格。 「Competition」欄在第 1 與第 6 列包含 1 - Opening,在第 3 與第 5 列包含 2 - Main,並在第 2 與第 4 列包含 3 - Final。 Position 數據列包含每個競賽值 1 或 2 的值。
在此範例中,目標是依 [競爭] 和 [位置] 字段以遞增順序排序此數據表。
包含「競賽」、「競爭對手」和「位置」欄位的表格。 「Competition」欄在第 1 和第 2 列包含 1 - Opening,在第 3 和第 4 列包含 2 - Main,並在第 5 和第 6 列包含 3 - Final。 Position 數據列包含從上到下的值 1、2、1、2、1 和 2。
遞增排序會將欄中的文字資料依字母順序排序,先從 A 到 Z,再從 a 到 z。 遞減排序會將欄中的字母資料列依字母順序從 z 排到 a,接著從 Z 排到 A。例如,請查看下列未排序的資料欄:
使用遞增排序時,字母欄會以下列方式排序:
使用遞減排序時,字母欄會以下列方式排序:
依某一欄排序表格
若要依單一欄位排序表格,請先選擇該欄位。 接著從以下兩個地方之一選擇排序操作:
在這個例子中,請使用首頁分頁的排序群組按鈕來排序競賽欄位。此動作在「已套用步驟」區塊中建立一個名為「排序列」的新步驟。
在 競賽 下拉選單圖示中會新增一個指向向上的箭頭,顯示該欄正按升序排序。
按多個欄位排序表格
你可以同時依多個欄位排序。 Power Query 會依優先順序套用每一欄的排序,所以列會先依第一欄排序,接著是第二欄對與第一欄相符的列排序,依此類推。 定義多欄排序有兩種方式:從欄目選單,或從 排序 對話框。
使用欄位標題選單
延續前述範例,也將 位置 欄位依升序排序,這次使用 位置欄位標題 下拉選單。
這個動作不會新增一個新的 排序 列步驟,而是修改現有步驟,讓它能在同一步驟中執行兩種排序操作。 當你用這種方式排序多欄時,欄位排序的順序是根據欄位被選擇的順序來決定的。 一個視覺指示器會以數字顯示在下拉式選單指示器的左側,用來表示每個欄位在排序順序中的位置。
使用排序對話框
對於有超過幾個層級的排序,或你想一次查看並重新排序所有排序層級,請使用 排序 對話框取代欄目選單。
在 「主頁 」分頁,在 排序 群組中選擇 排序。
如果你在開啟對話框前選取一個或多個欄位,Power Query 會自動依照你選擇的順序,將這些欄位加入排序層級。 否則,對話框會以單一空白關卡開啟。 例如 ,以下排序 對話框定義了在不同表格上的三層排序,先依 減法排序,再依 優先順序,再依 區域排序,依序遞減。
排序對話框會列出格子中所有排序層級:
- 優先權:Power Query 依序從上到下套用每一層。 這個數字就是資料預覽中每個排序欄位標題旁邊顯示的數字。
- 欄位:此等級所依據的欄位。 一欄一次只能在一關使用;其他關卡已使用的欄位不會出現在這個列表中。
- 排序順序:排序的方向,例如 遞增(從最小到最大) 或 遞減(從最大到最小)。
要更改排序順序:
- 選取 + 新增關卡,即可在現有關卡下方新增一個新的空白關卡。
- 選擇關卡旁的 ... 選單來移除它,或將優先順序往上或往下移動。
- 拖曳關卡所在的列,並將其放到新位置,即可直接調整順序。
每個關卡都需要先選擇 欄位 和 排序順序 ,才能選擇 確定。 如果有任何層級缺少選取,或兩個層級共用同一欄,Power Query 會阻擋排序並標示需要注意的層級。
選擇確定後,Power Query 會依照你定義的所有層級排序表格,並在每個已排序欄位的標題旁顯示優先順序,順序與對話框中的層級相同。
若要變更現有的多層排序,請選取 套用步驟中 已排序的資料列 步驟旁的齒輪圖示。 Power Query 會重新開啟排序對話框,裡面已經填滿所有已儲存的層級和排序順序。
清除欄位中的排序操作
執行下列其中一個動作:
- 選取數據行標題旁的向下箭號,然後選取 [ 清除排序]。
- 在套用的步驟中,選取已排序資料列步驟旁的齒輪圖示,以開啟排序對話方塊,然後移除所有層級。
- 在 [查詢設定] 窗格的 [套用步驟] 中,刪除 [已排序的數據列] 步驟。
。 當您選取圖示時,會顯示排序數據行的選項。