はじめに
ワークシートの順番を変えたい(移動したい)時には、Worksheetsコレクションの Move メソッドを使用します。Moveメソッドの構文は以下のようになります。
Worksheets.Move ( Before, After )
それぞれの引数は以下の通りです。
引数 | 説 明 |
---|---|
Before | 指定したシートの前方に移動 |
After | 指定したシートの後方に移動 |
Before と After はどちらかを指定します。引数は省略可能です。尚、シートを移動した直後は、そのシートがアクティブシートになります。
先頭に移動
以下のようなシートの並びで、data シートを先頭に移動したい場合は、引数を Before にして先頭のワークシートのを指定します。

Sub testMove1()
Worksheets("data").Move before:=Worksheets(1)
End Sub

data シートが先頭に移動しました。
末尾に移動
指定したシートを末尾に移動したい場合は、引数を After にして、最後のシートを指定します。
最後のシートは、Worksheets(Worksheets.Count) とすれば良いでしょう。
Sub testMove2()
Worksheets("data").Move after:=Worksheets(Worksheets.Count)
End Sub

引数を指定しない場合
Before や After を指定しない場合は、指定したワークシートの前方に移動するようです。
2番目のシートを指定して実行してみます。
Sub testMove3()
Worksheets("data").Move Worksheets(2)
End Sub

これだと少々わかりずらいので、Before や After を指定した方が良いでしょう。