如何在 Excel 中按奇數或偶數對行進行排序?
在 Excel 中按升序或降序對數字進行排序是一項常見的任務,但有時您可能需要整理數據,使所有奇數集中在一起,所有偶數也集中在一起。例如,假設您有一個很大的數字列表,並且希望將奇數和偶數分開以進行更方便的分析或報告。按奇數或偶數值排序並不是 Excel 的默認功能,但有多種實用方法可以幫助您完成此操作。下面,您將找到幾種解決方案來按奇數或偶數對行進行排序——無論您喜歡使用輔助列、公式、VBA 代碼還是高級外掛程式。
![]() | ![]() | ![]() |
使用輔助列按奇數或偶數對行進行排序
在 Excel 中按奇數或偶數值對數字進行排序的最快方法之一是添加一個輔助列,該列可讓 Excel 在排序操作中區分奇數和偶數。這種方法簡單直接,適合熟悉公式和排序功能的用戶,並且適用於任何 Excel 版本。該方法靈活,但確實需要臨時添加一個新列。
1. 在您的數字列表旁邊,在空白的相鄰單元格中輸入以下公式(例如,如果您的數字從 A2 開始,則在 B2 中輸入此公式): =ISODD(A2) 然後按 Enter。
參見截圖:
提示:ISODD 函數檢查某個值是否為奇數。如果您使用列標題,請確保公式引用正確的數據行。
2. 使用填充柄將公式拖動到整個列表旁邊。公式會為奇數填充 TRUE,為偶數填充 FALSE。這個視覺上的區別將作為排序的基礎。
參見截圖:
3. 保持公式單元格選中狀態,然後點擊 數據 > 從小到大排序 或 從大到小排序。
4. 在 排序警告 對話框中,選擇 展開選取範圍 然後點擊確定。這樣可以確保所有行都被正確排序,相關數據保持在一起。
參見截圖:
5. 點擊 排序 按鈕。如果您選擇了“從小到大排序”,列表將按偶數在前,奇數在後進行分組(因為 FALSE 被認為比 TRUE 小)。
參見截圖:
注意:
1. 如果希望奇數出現在偶數之前,請在步驟 3 選擇 從大到小排序 .
2. 排序後可以刪除輔助列以保持工作表整潔。
3. 注意不要僅僅對輔助列進行排序,否則會破壞原始數據順序。
實用提示:這種方法通用、離線可用,不需要宏或外掛程式。然而,如果您經常需要按奇數/偶數排序,您可能想嘗試其他方法以提高自動化程度。
使用 Kutools for Excel 按奇數或偶數對行進行排序
對於管理大型數據集並希望獲得更快、更靈活解決方案的用戶,Kutools for Excel 提供了一個高級排序功能,可以直接對奇數和偶數進行排序——無需創建輔助列或編寫複雜公式。這非常適合經常執行類似排序任務或喜歡圖形界面的用戶。Kutools 增強了排序功能,並有效地支持批量操作。
安裝 Kutools for Excel 後,請按照以下步驟操作:
1. 選擇您要排序的數據範圍。
2. 轉到 Kutools Plus > 排序 > 高級排序.
參見截圖:
3. 在 高級排序 對話框中,從 列 下拉菜單中選擇要排序的列。在 排序依據 部分,選擇 奇偶數;然後選擇所需的排序順序: A 到 Z 為先偶數後奇數, Z 到 A 為先奇數後偶數。
參見截圖:
4. 點擊確定。您的列表將立即根據您的設置對奇數和偶數進行分組。以下是示例結果:
原始數據 | 從偶數到奇數排序 | 從奇數到偶數排序 | ||
![]() | ![]() | ![]() | ![]() | ![]() |
優勢: 無需額外公式或列,使用簡單的界面,快速按奇/偶標準進行排序,非常適合頻繁使用的用戶。
考慮事項: Kutools 是第三方外掛程式,需要安裝,但許多用戶信賴其強大的 Excel 增強功能。
演示:使用 Kutools for Excel 按奇數或偶數對行進行排序
使用 VBA 代碼按奇數或偶數對行進行排序
如果您希望自動化按奇數或偶數值對數字進行排序的過程,使用 VBA 宏是一種高效的方法。這種方法適合具備基本宏知識的用戶,特別是在需要頻繁重複排序或希望避免添加輔助列且不願依賴第三方外掛程式的情況下。VBA 提供了一種快速且無花哨的方式來就地排序。
1. 點擊 開發工具 > Visual Basic 打開 Microsoft Visual Basic for Applications 窗口。如果您看不到開發工具選項卡,可以通過 Excel 選項啟用它。在 VBA 窗口中,點擊 插入 > 模塊,並將以下代碼粘貼到模塊中:
Sub SortByOddEven()
Dim ws As Worksheet
Dim rng As Range, cell As Range
Dim arr As Variant
Dim HelperArr() As Integer
Dim i As Long
On Error Resume Next
Set ws = Application.ActiveSheet
Set rng = Application.InputBox("Select the range to sort (single column):", "KutoolsforExcel", Type:=8)
If rng Is Nothing Then Exit Sub
arr = rng.Value
ReDim HelperArr(1 To UBound(arr, 1))
For i = 1 To UBound(arr, 1)
If IsNumeric(arr(i, 1)) Then
HelperArr(i) = arr(i, 1) Mod 2
Else
HelperArr(i) = 2 ' Non-numeric entries go last
End If
Next i
' Add helper column
rng.Offset(0, 1).Resize(UBound(arr, 1), 1).Value = Application.Transpose(HelperArr)
' Sort by helper column
ws.Sort.SortFields.Clear
ws.Sort.SortFields.Add Key:=rng.Offset(0, 1), SortOn:=xlSortOnValues, Order:=xlAscending
With ws.Sort
.SetRange rng.Resize(, 2)
.Header = xlNo
.Apply
End With
' Remove helper column
rng.Offset(0, 1).Resize(UBound(arr, 1), 1).Clear
MsgBox "Rows are sorted by odd (1) or even (0) numbers.", vbInformation, "KutoolsforExcel"
End Sub
2. 按 F5 或點擊 按鈕運行宏。在出現的輸入框中選擇您的數據列,宏將自動對您的數據進行排序,使偶數集中在奇數之前(或反之,取決於排序順序)。
注意和故障排除:
- 如果您將此宏應用於多列範圍,只有所選列及其緊鄰列將被排序。為了獲得最佳效果,請僅選擇要排序的列,或在高級用例中調整代碼以進行多列排序。
- 運行宏之前請確保保存您的工作表,以避免意外數據丟失。
- 非數字條目將被排序到底部,以避免錯誤。
優勢: 完全自動化,沒有輔助列殘留,適合重複任務快速執行。
局限性: 需要啟用宏並具備一些 VBA 經驗;在敏感數據上使用時請謹慎。
使用 MOD 公式識別奇數或偶數
除了 ISODD 函數,您還可以使用 MOD 函數來區分奇數和偶數。這種方法適合熟悉標準數學運算或使用某些缺少特定功能或本地化的舊版 Excel 的用戶。MOD 方法給您明確的數字指示器——偶數為 0,奇數為 1——讓您可以控制順序或與其他排序工作流程集成。
1. 在靠近數字的空白單元格中(例如 B2),輸入以下公式:
=MOD(A2,2)
此公式將 A2 中的值除以 2 並返回餘數。偶數產生 0;奇數產生 1。
2. 將此公式複製到其餘數字列表中。
3. 根據此輔助列對數據進行排序(數據 > 排序),就像前面描述的輔助列方法一樣。從小到大排序將把所有偶數(0)放在所有奇數(1)之前。
提示:
- 如果您的數據包含非整數值,MOD 仍然有效,但只有整數會像預期那樣顯示 0 或 1。
- 此方法與語言和地區無關,並且比 TRUE/FALSE 輸出更加透明。
- 您可以通過在升序和降序排序之間切換來改變順序。
相關文章:
最佳 Office 生產力工具
🤖 | Kutools AI 助手:以智能執行為基礎,革新數據分析 |生成程式碼 | 創建自訂公式 | 分析數據並生成圖表 | 調用 Kutools 增強函數… |
熱門功能:查找、選取項目的背景色或標記重複值 | 刪除空行 | 合併列或單元格且不遺失數據 | 四捨五入(免公式)... | |
高級 LOOKUP:多條件 VLookup|多值 VLookup|多表查找|模糊查找... | |
高級下拉列表:快速創建下拉列表 |依賴型下拉列表 | 多選下拉列表... | |
列管理器:添加指定數量的列 | 移動列 | 切換隱藏列的顯示狀態 | 比較區域及列... | |
精選功能:網格聚焦 | 設計檢視 | 增強編輯欄 | 工作簿及工作表管理器 | 資源庫(快捷文本) | 日期提取器 | 合併資料 | 加密/解密儲存格 | 按列表發送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體/傾斜/刪除線...)... | |
15 大工具集:12 項文本工具(添加文本、刪除特定字符…)|50+ 儀表 類型(甘特圖等)|40+ 實用 公式(基於生日計算年齡等)|19 項插入工具(插入QR码、根據路徑插入圖片等)|12 項轉換工具(金額轉大寫、匯率轉換等)|7 項合併與分割工具(高級合併行、分割儲存格等)|...及更多 |
運用 Kutools for Excel,全面提升您的 Excel 技能,體驗前所未有的高效。 Kutools for Excel 提供超過300 項進階功能,讓您提升工作效率、節省時間。 點此尋找您最需要的功能...
Office Tab 為 Office 帶來分頁介面,讓您的工作更加輕鬆簡單
- 在 Word、Excel、PowerPoint 中啟用分頁編輯與閱讀。
- 在同一視窗的新分頁中打開與創建多份文件,而非開啟新視窗。
- 提升您的生產力50%,每日可幫您減少數百次鼠標點擊!
所有 Kutools 外掛,一次安裝
Kutools for Office 套裝整合了 Excel、Word、Outlook 和 PowerPoint 的外掛,外加 Office Tab Pro,非常適合需要跨 Office 應用程式協同作業的團隊。





- 全合一套裝 — Excel、Word、Outlook及 PowerPoint 外掛 + Office Tab Pro
- 一鍵安裝,一份授權 — 幾分鐘完成設置(支援 MSI)
- 協同運作更順暢 — Office 應用間無縫提升生產力
- 30 天全功能試用 — 無需註冊、無需信用卡
- 最超值 — 一次購買,節省單獨外掛費用