如何在 Excel 中根據小寫字串,依大寫字母對欄列進行篩選與排序?
當您在 Excel 中處理同時包含大寫、首字母大寫與小寫文字的清單時,可能會需要根據字母大小寫來整理資料—例如,將所有大寫項目排在最前面,接著是首字母大寫項目,最後是小寫項目,或採用相反順序。雖然 Excel 內建的排序功能無法直接依大小寫進行排序,但仍有實用的替代方法可達成此目的。當您處理遵循特定命名慣例、代碼或識別碼的資料時(其中大小寫可能代表不同分類或層級),區分大小寫的排序尤其實用。以下為此類資料集的範例:

目錄
使用輔助欄位依大寫根據小寫字串篩選排序列
雖然 Excel 本身不支援區分大小寫的排序功能,但您可以透過輔助欄位中的公式,先對每個儲存格的文字大小寫進行分類,再依此分類對整個表格排序。若您偏好結合公式與 Excel 內建工具,這個方法不僅實用,還能輕鬆調整公式,以適應更複雜的文字結構。
1. 在緊鄰資料的空白儲存格中輸入下列公式——假設您的資料從 A2 儲存格開始,請於 B2 儲存格輸入此公式:
=IF(EXACT(A2,UPPER(A2)),"Upper Case",IF(EXACT(A2,LOWER(A2)),"Lower Case",IF(EXACT(A2,PROPER(A2)),"Proper Case","Other"))) 此公式會逐一檢查 A2 儲存格中的值,並將其分類為「全部大寫」、「根據小寫字串篩選」或「首字母大寫」;若不符合上述三種類型,則標示為「Other」。若您有更複雜的分類需求,可依實際情況調整此公式。請參閱下方截圖,了解公式的正確格式:

2. 利用填滿控點將此公式向下複製至所有需要分類的列,即可為清單中的每個項目標註其文字大小寫類型。填滿時請務必確認儲存格參照正確無誤:

3. 在 B 欄新增大小寫分類後,選取包含輔助欄位在內的整個資料區域(例如 A1:B11)。按一下資料> 排序,然後在「排序」對話方塊中執行下列操作:
- 在欄位
- 選取值,並在排序依據
- 根據您希望先顯示根據小寫字串篩選還是全部大寫,選擇所需的排序順序(「A 到 Z」或「Z 到 A」)

注意:若您的表格包含標題,請務必勾選包含標題選項,以確保排序準確無誤!
4. 按一下對話方塊中的確定以執行排序。您的清單現在將依文字大小寫分組——若選擇「A 到 Z」排序,小寫字串會排在首字母大寫之後,再接全部大寫;若要讓全部大寫排在最前,請選擇相反順序。排序結果如下所示:

提示與注意事項:
1. 完成資料排序後,可刪除輔助欄位,讓工作表更整潔。
2. 若要反轉排序順序(例如讓大寫字母排在最前),請在「排序」對話方塊中選擇「Z 到 A」,而非「A 到 Z」。
3. 處理長清單時,拖曳公式前務必再次確認儲存格參照是否正確,避免出錯。
4. 請注意,輔助欄位方法不會自動對各群組內的資料進行字母排序,除非您在對話方塊中新增第二個排序層級。
不使用輔助欄位、具大小寫區分的 VBA 巨集排序法
若您需要執行真正的區分大小寫排序(而非僅進行分類分組),且希望避免使用輔助欄位,則 Excel 內建的排序功能將無法滿足需求,因其在排序過程中無法辨識字母大小寫的差異。此時,您可透過 VBA 巨集直接實現真正區分大小寫的排序。此方法尤其適合處理大型資料集、自動化流程或重複性作業,因為巨集不僅能立即完成排序,還可反覆使用,大幅提升效率。
當您希望更精準掌控排序邏輯,或需要為多個工作表與範圍自動化此流程時,此方法尤為理想。
注意事項:巨集將覆寫您所選範圍的排序順序。執行新的 VBA 程式碼前,務必備份資料,並確認 Excel 已啟用巨集功能。
請依照下列步驟操作:
1. 前往開發人員工具 > Visual Basic。在 Visual Basic for Applications 視窗中,按一下插入 > 模組,然後將下列程式碼貼到新模組中:
Sub CaseSensitiveSort()
Dim WorkRng As Range
Dim ws As Worksheet
Dim col As Integer
Dim xTitleId As String
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Select Range to Sort:", xTitleId, WorkRng.Address, Type:=8)
col = Application.InputBox("Enter the Column Number to Sort By (e.g.,1 for first column):", xTitleId, 1, Type:=1)
Set ws = WorkRng.Worksheet
ws.Sort.SortFields.Clear
ws.Sort.SortFields.Add Key:=WorkRng.Columns(col), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:=xlSortNormal
With ws.Sort
.SetRange WorkRng
.Header = xlYes
.MatchCase = True
.Apply
End With
End Sub 此巨集可讓您選取欲排序的範圍、指定用於排序的欄位(依欄號),並套用真正的區分大小寫排序。.MatchCase = True 引數可確保大寫、小寫與首字母大寫項目被精確區分並正確排序。
2. 返回 Excel 主視窗後,按下 F5 鍵或點選「執行」來執行 VBA。系統將提示您選取範圍並指定排序依據的欄號,確認後,巨集便會以區分大小寫的方式對資料進行排序!
疑難排解與提示:
-若遇到任何錯誤,請再次確認範圍選取與欄號輸入是否正確。
-欄號選錯可能導致排序結果不如預期。
-此巨集僅適用於目前選取的工作表;若需對多個工作表進行排序,請重複執行此流程。
此解決方案提供更穩健的排序方式,專為複雜或自動化的區分大小寫排序需求而設計,適合進階使用者,或希望避免手動建立輔助欄位的使用者。
相關文章:
最佳 Office 生產力工具
| 🤖 | KUTOOLS AI 助手:基於以下內容徹底革新數據分析:智慧執行 | 產生程式碼| 建立自訂公式 | 分析資料並產生圖表| 呼叫增強函數…… |
| 熱門功能:尋找、醒目提示或標記重複值 | 刪除空白行 | 合併列或儲存格而不遺失資料 | 不使用公式的四捨五入…… | |
| 高級 LOOKUP:多重條件 VLookup | 多重數值 VLookup | 跨多個工作表 VLookup | 模糊查找…… | |
| 高級下拉列表:快速建立下拉式清單 | 相依式下拉式清單 | 多選下拉式清單…… | |
| 欄位管理員:新增指定數量的欄位|移動欄位|切換隱藏欄位的可見狀態|比較範圍與欄位…… | |
| 精選功能:網格聚焦 | 設計視圖 |增強編輯欄 | 工作簿與工作表管理員 | 資源庫(自動文字)| 日期提取 | 合併工作表 | 加密/解密儲存格 | 依清單傳送電子郵件 | 超級篩選 | 特殊篩選(篩選粗體儲存格/斜體/刪除線……) ...... | |
| 頂尖 15 工具組:12 文字工具(添加文本,刪除特定字符,……)| 50+ 圖表 類型(甘特圖,……)| 40+ 實用公式(基於生日計算年齡,……)| 19 插入工具(插入二維碼,從路徑插入圖片,……)| 12 轉換工具(金額轉大寫,匯率轉換,……)| 7 合併和拆分工具(高級合併行,分割儲存格,……)|……以及更多 |
運用 Kutools for Excel 強化您的 Excel 技能,體驗前所未有的高效能!Kutools for Excel 提供超過 300 項進階功能,大幅提升生產力並節省寶貴時間。立即點擊,取得您最需要的功能……
Office Tab 為 Office 帶來分頁式介面,讓您的工作更輕鬆自在!
- 在 Word、Excel、PowerPoint 中啟用分頁式編輯與閱讀功能,以及 Access、Visio 與 Project。
- 在同視窗的新分頁中開啟並建立多份文件,而非另開新視窗。
- 每天為您提升 50% 的工作效率,並省下數百次滑鼠點擊!
所有 Kutools 增益集,一個安裝程式
Kutools for Office 套件整合了 Excel、Word、Outlook 與 PowerPoint 的增益集,以及 Office Tab Pro,非常適合需要跨多個 Office 應用程式協作的團隊使用!
- 全能套件— 包含 Excel、Word、Outlook 與 PowerPoint 增益集,以及 Office Tab Pro
- 一個安裝程式,一個授權— 數分鐘內即可完成設定(支援 MSI)
- 協同運作更出色— 在多個 Office 應用程式間實現流暢的生產力體驗
- 30 天完整功能試用— 無需註冊,無需信用卡
- 超值之選— 比單獨購買各增益集更省費用