• 跳至主要導覽
  • 跳至主要內容
  • 跳至主要資訊欄
Office 指南

Office 指南

辦公室工作實用教學

  • Excel
  • Word
  • PowerPoint
  • Windows
  • PowerShell
  • R

Excel VBA Range.Sort 範圍排序教學與範例

介紹如何在 Excel VBA 中針對指定範圍,依據指定的欄位與條件進行資料的排序。


假設我們的原始資料如下:

原始資料
原始資料

基本排序

若單純只是要依據姓名(或其他單一欄位)來排序,只要指定資料範圍,並以 Key1 指定排序依據的欄位,即可進行資料的排序:

' 排序 A1:D10 範圍的資料
' Key1:=Range("A1")    依據 A 欄排序
' Order1:=xlAscending  升冪排序
' Header:=xlYes        有標題列
Range("A1:D10").sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlYes

若要更改排序方式,則可由 Order1 參數調整,可用的值有 xlAscending(升冪排序)與 xlDescending(降冪排序)。若表格不包含標題列,可將 Header 參數改為 xlNo。

如果想要對整欄的所有資料進行排序,可以使用 Columns 指定要納入排序的欄位:

' 排序 A 欄至 D 欄的所有資料
' Key1:=Range("A1")    依據 A 欄排序
' Order1:=xlAscending  升冪排序
' Header:=xlYes        有標題列
Columns("A:D").sort Key1:=Range("A1"), Order1:=xlAscending, Header:=xlYes

排序過後的表格會像這樣。

依據姓名欄排序
依據姓名欄排序

依據日期排序

若要根據日期排序,只要將 Key1 指定為日期那一欄即可:

' 排序 A 欄至 D 欄的資料
' Key1:=Range("C1")     依據 C 欄排序
' Order1:=xlDescending  降冪排序
' Header:=xlYes         有標題列
Columns("A:D").sort Key1:=Range("C1"), Order1:=xlDescending, Header:=xlYes

根據日期降冪排序過後的表格會像這樣。

根據日期降冪排序
根據日期降冪排序

依據多欄位排序

若要根據多個欄位來排序,只要透過 Key1、Key2、Key3 這些參數來依序指定排序的依據欄位即可,同時搭配 Order1、Order2、Order3 指定排序的方式。

舉例來說,如果想先依據組別升冪排序,同組別之內再依據金額降冪排序,可以這樣寫:

' 排序 A 欄至 D 欄的資料
' Key1:=Range("B1")     依據 B 欄排序
' Order1:=xlAscending   升冪排序
' Key2:=Range("D1")     依據 D 欄排序
' Order2:=xlDescending  降冪排序
' Header:=xlYes         有標題列
Columns("A:D").sort Key1:=Range("B1"), Order1:=xlAscending, _
  Key2:=Range("D1"), Order2:=xlDescending, Header:=xlYes

排序過後的表格會像這樣。

依據多欄位排序
依據多欄位排序

分類:Excel 標籤:VBA

讀者互動方式

發佈留言 取消回覆

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

主要資訊欄

搜尋

近期文章

  • Linux 檢查、測試 CPU AES-NI 硬體加速加密指令集教學
  • CentOS Linux 7.9 自行編譯、安裝 OpenSSH 9.0p1 伺服器教學與範例
  • Python 使用 zipfile 模組壓縮、解壓縮 ZIP 檔案教學與範例
  • Python 以 LINE Notify 自動傳送即時訊息、圖片教學與範例
  • Linux 使用 Prometheus 與 Grafana 監控伺服器狀態、發送告警 Email 簡訊教學與範例
  • Linux 設定 pam_tty_audit 記錄 SSH 使用者操作指令教學與範例
  • Linux 封鎖、解鎖登入失敗次數過多的帳號 pam_faillock 教學與範例
  • Python 使用 pytube 自動下載 YouTube 影片教學與範例

推薦網站

  • Udemy 線上教學課程
  • Coursera 線上教學課程

關注本站

  • 電子郵件
  • Facebook

公益

  • 家扶基金會
  • 台灣世界展望會
  • Yahoo 奇摩公益
  • igiving 公益網
  • 兒福聯盟

Copyright © 2021 · Office Guide