這是基於昨天的 VBA 排序的進階版:按滑鼠單擊的標題列位置,動態地排序。
案例:
我們還是用昨天這張表格來舉例。
當滑鼠單擊 B1:E1 區域時,滑鼠單擊哪一列標題行,就自動按照該列從大到小的順序排序。
方法:
1。 按 Alt + F11 開啟 VBE,輸入以下程式碼:
Sub Worksheet_SelectionChange(ByVal Target As Range)‘選擇的單元格發生變化後就會觸發Worksheet的SelectionChange事件
Dim iColumn As Integer ’宣告 iColumn 變數
If Target。Column
If Target。Column iColumn Then‘如果滑鼠點選的列數不等於 iColumn,那麼將點選數出賦值給 iColumn
iColumn = Target。Column
End If
Range(“A1:E9”)。CurrentRegion。Sort KEY1:=Cells(1, iColumn), ORDER1:=xlDescending, _
Header:=xlYes ’在區域 A1:E9 內,按滑鼠單擊的第一行單元格降序排列
End If
End Sub
2。 按下 F5,或點選 VBE 選單欄的 三角箭頭,執行宏,可以看到我們需要的效果了:
Excel學習世界
轉發、在看也是愛!