大体でIT

-ちょっと使えるネタを紹介-

大体でIT

Excel VBAで、シートを移動したい場合は、「.Move」を使って「before:=」や「after:=」に移動先のシートを指定することでできます。別ブックへの移動は、「.Move」のみを入力します。複数シートの移動は、「配列」を使います。シートの操作方法について、マスターしていきましょう。

はじめに

この記事では、シートを移動する方法について、ご紹介します。

シートを移動するには、「.Move」を使って、「before:=」や「after:=」の引数に移動先のシートを指定するとできます。

別ブックに移動する場合は、引数を省略して、「.Move」のみを入力です。

複数シートを移動したい場合は、「配列」を使います。

シートの移動方法について、マスターしていきましょう。

では、シートを移動する方法について、解説していきます。

この記事を読むメリット

  • シートを自由自在に移動することができるようになります。

目次

シートの移動

シートを次の場所に、移動してみます。

  • 特定シートの左右
  • 先頭や末尾
  • 別ブック

では、それぞれやってみます。

特定シートの左に移動

特定シートの左に移動してみます。

特定シートの左に移動したいので、「before:=」を使います。

Sub TEST1()
  
  'Cのシートの左側に移動
  ActiveSheet.Move before:=Sheets("C")
  
End Sub

では、実行してみます。

Cのシートの左に移動

Aのシートを、Cのシートの左に移動します。

Aのシートを、Cのシートの左に移動します

実行すると、Aのシートを、Cのシートの左に移動できます。

Aのシートを、Cのシートの左に移動できました

Aのシートを、Cのシートの左に移動できました。

特定シートの右に移動

次は、特定シートの右に移動してみます。

特定シートの右に移動したいので、「after:=」を使います。

Sub TEST2()
  
  'Cのシートの右側に移動
  ActiveSheet.Move after:=Sheets("C")
  
End Sub

では、実行してみます。

Cのシートの右に移動

Aのシートを、Cのシートの右に移動します。

Aのシートを、Cのシートの右に移動します

実行すると、Aのシートを、Cのシートの右に移動できます。

Aのシートを、Cのシートの右に移動できました

Aのシートを、Cのシートの右に移動できました。

シートの先頭に移動

シートの先頭に移動してみます。

引数に「before:=Sheets(1)」と入力をします。

Sub TEST3()
  
  '先頭に移動
  ActiveSheet.Move before:=Sheets(1)
  
End Sub

では、実行してみます。

先頭に移動

Cのシートを、先頭に移動します。

Cのシートを、先頭に移動します

実行すると、Cのシートを、先頭に移動できます。

Cのシートを、先頭に移動できました

Cのシートを、先頭に移動できました。

シートの末尾に移動

シートの末尾に移動してみます。

引数に「after:=Sheets(Sheets.Count)」を入力します。

Sub TEST4()
  
  '末尾に移動
  ActiveSheet.Move after:=Sheets(Sheets.Count)
  
End Sub

では、実行してみます。

末尾に移動

Aのシートを、末尾に移動します。

Aのシートを、末尾に移動します

実行すると、Aのシートを、末尾に移動できます。

Aのシートを、末尾に移動できました

Aのシートを、末尾に移動できました。

別ブックに移動

別ブックに移動してみます。

引数を省略して、「.Move」のみを入力します。

Sub TEST5()
  
  '新規ブックに移動
  ActiveSheet.Move
  
End Sub

では、実行してみます。

別ブックに移動できた

Aのシートを、別ブックに移動できました

Aのシートを、別ブックに移動できました。

複数シートを移動する

複数シートを移動するには、「配列」を使います。

配列を使う

配列を使って、AとBのシートを移動するVBAコードです。

Sub TEST6()
  
  '複数シートを移動
  Sheets(Array("A", "B")).Move after:=Sheets (Sheets.Count)
  
End Sub

複数シートを移動します。

複数シートを移動

複数シートを移動します

実行すると、複数シートを移動できます。

複数シートを移動できた

複数シートを移動できました

複数シートを移動できました。

別ブックに移動

複数シートを別ブックに移動してみます。

Sub TEST7()
  
  '複数シートを新規ブックに移動
  Sheets(Array("A", "B")).Move
  
End Sub

実行すると、複数シートを別ブックに移動できます。

複数シートを別ブックに移動できた

複数シートを別ブックに移動できました

複数シートを別ブックに移動できました。

シートを別ブックに移動する際の注意

シートを別ブックに移動する際の注意として、移動後に1シートはブック内に残す必要があります。

1シートは残す必要がある

1シートのみのシートを、別ブックに移動してみます。

1シートのみのシートを別ブックに移動してみる

1シートのみのシートを、別ブックに移動してみます

別ブックに移動するVBAコードです。

Sub TEST8()
  
  '新規ブックに移動
  ActiveSheet.Move
  
End Sub

実行すると、エラーとなります。

1シートは残す必要がある

エラーとなります

エラーとなりました。

別ブックに移動する際は、1シートは残すようにしましょう。

おわりに

この記事では、シートを移動する方法について、ご紹介しました。

シートを移動するには、「.Move」を使って、「before:=」や「after:=」の引数に移動先のシートを指定するとできます。

別ブックに移動する場合は、引数を省略して、「.Move」のみを入力です。

複数シートを移動したい場合は、「配列」を使います。

シートの移動方法について、マスターしていきましょう。

参考になればと思います。最後までご覧くださいまして、ありがとうございました。

関連する記事から探す

カテゴリから探す

カテゴリから見たい項目を探すと便利ですよ。

サイト内を検索する

↓キーワードを入力する

アーカイブから探す