Sub DataSort() Range("B3").CurrentRegion.Sort _ Key1:=Range("C3"), Order1:=xlAscending, _ Key2:=Range("B3"), Order2:=xlAscending, _ Orientation:=xlTopToBottom, Header:=xlGuess End Sub
●上記プログラムのの詳細説明
行 | コード | 説明 |
1 | Range(“B3”).CurrentRegion.Sort _ | ソートを行う選択範囲を指定します。表の左上の(B3)セルを指定します。 |
2 | Key1:=Range(“C3”), Order1:=xlAscending, _ | ソート第1条件(Key1)の指定を行います。(C3)得意先を選択します。(Order)で昇順・降順を指定します。「昇順を指定」 |
3 | Key2:=Range(“B3”), Order2:=xlAscending, _ | ソート第2条件(Key2)の指定を行います。(B3)日付を選択します。(Order)で昇順・降順を指定します。「昇順を指定」 |
4 | Orientation:=xlTopToBottom, Header:=xlGuess | 行・列の並び替え指定および、データの先頭行は、見出しかどうかの指定 |
●ソートで使う定数の説明
昇順と降順の定義 | |
---|---|
昇順 | xlAscending |
降順 | xlDescending |
行・列の並び替え定義 | |
---|---|
行の並び替え | xlTopToBottom |
列の並び替え | xlLeftToRigth |
先頭行が見出しかどうかを示す定数 | |
---|---|
表の1行目が見出し | xlYes |
表の1行目が見出しではない | xlNo |
表の1行目が見出しか自動的に判断する | xlGuess |
Sub DataSort2() Range("B3").CurrentRegion.Sort _ Key1:=Range("C3"), Order1:=xlAscending, _ Key2:=Range("B3"), Order2:=xlAscending, _ key3:=Range("D3"), order3:=xlDescending, _ Orientation:=xlTopToBottom, Header:=xlGuess '第3ソート条件まで指定しました。 End Sub