任意のソート条件を指定する
Sortオブジェクトを使うと、データを並べ替えることができます。
ユーザー設定リストを使い、より自由にソート条件を指定したい場合、
SortFields.AddメソッドのCustomOrderにソート条件を記述することで任意の並べ替えが可能です。
CustomOrderには並べ替えたい値をカンマで区切って指定します。
サンプルコード
Public Sub Data()
Range("A1") = "項目名"
Range("A2") = "A"
Range("A3") = "B"
Range("A4") = "C"
End Sub
Public Sub Sample()
With Worksheets(1).Sort
.SortFields.Clear 'ソート設定をクリア
'■ソート条件を任意の値で指定する(A,B,C→C,A,B)
.SortFields.Add Key:=Range("A2"), CustomOrder:="C,A,B"
.SetRange Range("A1:A4") '並べ替えるセルの範囲を指定
.Header = xlYes '先頭行をタイトルとする
.Apply '上記条件で並べ替える
End With
End Sub
注意点
- 先に「Data」を実行すると、簡易的なデータが入力されます。
- Sortオブジェクトだけでは実現できない、複雑な並べ替えが可能になります。
関連記事



コメント