![](https://excel-vba.work/wp-content/themes/cocoon-master/images/b-woman.png)
VBAで
・配列をソート(並び替え)
できます!
※簡易にできます。
※アルゴリズム(バブルソート、クイックソート等)は不要です。
![配列](https://excel-vba.work/wp-content/uploads/2022/09/vba_sort_array_003.png)
![配列をソート(並び替え)](https://excel-vba.work/wp-content/uploads/2022/09/vba_sort_array_002.png)
![](https://excel-vba.work/wp-content/themes/cocoon-master/images/b-woman.png)
VBAから
・ワークシート関数である「SORT関数」
を使用することで実現できます!
※SORT関数はOffice365のExcelでのみ使用できる関数です。
VBAコード
ここでは例として、
・配列を昇順でシート(並び替え)して
・イミディエイトウインドウへ出力
します。
※降順にもできます。
Option Explicit
Sub sample()
Dim arr As Variant
Dim arrSort As Variant
Dim item As Variant
'配列を作成
arr = Array(50, 2, 34, 100, 60)
'配列をソート(並び替え)
arrSort = WorksheetFunction.Sort(arr, 1, 1, True)
For Each item In arrSort
'ソート(並び替え)された配列をイミディエイトウインドウへ出力
Debug.Print item
Next
End Sub
実行結果
配列をソート(並び替え)できました。
※昇順にできました。
![実行結果](https://excel-vba.work/wp-content/uploads/2022/09/vba_sort_array_002.png)
参考①
シート上のデータを取得して、「ソート(並び替え)された配列」を作成することもできます。
詳細は以下の記事をご確認ください。
参考②
シート上のデータのソート(並び替え)もできます。
詳細は以下の記事をご確認ください。
参考③
上記のVBAコードで使用した以下の詳細は、公式サイトをご確認ください。
●SORT関数
●イミディエイトウィンドウへ出力