エクセルVBAで複数シートを選択してコピーする!シート名を指定

エクセルで複数のシートをコピーする時、1つ1つコピーするのは面倒です。シートが沢山あると、時間もかかります。いつもコピーするシートが決まっているなら、エクセルVBAを使うと簡単にシートをコピーできます。ここでは、エクセルVBAで、複数シートをシート名を指定してコピーする方法を紹介しています。挿入する位置も指定できるので、シートが沢山ある場合には、挿入する位置を探すこともなく一発で挿入できるので、間違えがありません。複数のシートを選択して、同じブックに、または別のブックにも挿入できます。シートの選択にシート名を指定して、色々なパターンのコピー方法を紹介しています。

 

 

同じファイルに複数シートをシート名を指定してコピー

エクセルVBAで、同ファイルに複数シートを選択してコピーします。シート名と挿入する位置を指定して、コピーしましょう。

シートをコピーする場合、同じシート名がある場合には、挿入されるシートは、シート名の後ろに、XXXX(2) と (2) が付きます。

Sheet1 をコピーすると、挿入されるシート名は Sheet1 (2) です。

 

 

複数シートを選択して指定した位置にコピーする

Sheet1 を Sheet2 の前の位置、または後にコピー

Sheet1 と Sheet2 を Sheet3 の後ろに、コピーするコードです。

Sub 同ブックのシート後ろにコピー()
Worksheets(Array(“Sheet1”, “Sheet2”)).Copy After:=Worksheets(“Sheet3”)
End Sub

Sheet1 と Sheet2 を Sheet3 の前に、コピーするコードです。

Sub 同ブックのシート前にコピー()
Worksheets(Array(“Sheet1”, “Sheet2”)).Copy Before:=Worksheets(“Sheet3”)
End Sub

Sheet1 を先頭の位置にコピーする

Sheet1 と Sheet2 を、ワークシートの先頭の位置に挿入するコードです。

Sub 同ブックのシート先頭にコピー()
Worksheets(Array(“Sheet1”, “Sheet2”)).Copy Before:=Worksheets(1)
End Sub

Sheet1 を末尾の位置にコピーする

Sheet1 と Sheet2 を を、ワークシートの末尾の位置に挿入するコードです。

Sub 同ブックのシート末尾にコピー()
Worksheets(Array(“Sheet1”, “Sheet2”)).Copy After:=Worksheets(Worksheets.Count)
End Sub

 

 

別ファイルに複数シートをシート名を指定してコピー

エクセルVBAで、別ファイルに複数シートを選択してコピーします。シート名と挿入する位置を指定して、コピーしましょう。

別ブックにシートをコピーする場合は、別ブックは必ず開いている必要があります。

別のファイルに複数シートを選択して指定した位置にコピーする

Sheet1 とSheet2 を、別ブックのSheet3 後ろ、前にコピー

Sheet1 と Sheet2 を、別ブック「Book3」の Sheet3 の後ろにコピーするコードです。

Sub 別ブックSheet3の後ろにコピー()
Worksheets(Array(“Sheet1”, “Sheet2”)).Copy After:=Workbooks(“Book3”).Sheets(“Sheet3”)
End Sub

ファイル名が、「売上一覧表.xls」の場合は、次のようになります。

Sub 売上一覧表、Sheet3の後ろにコピー()
Worksheets(Array(“Sheet1”, “Sheet2”)).Copy After:=Workbooks(“売上一覧表.xls”).Sheets(“Sheet3”)
End Sub

Sheet1 と Sheet2 を 、別ブック「Book3」の Sheet3 の前に、コピーするコードです。

Sub 別ブックSheet3の前にコピー()
Worksheets(Array(“Sheet1”, “Sheet2”)).Copy Before:=Workbooks(“Book3”).Sheets(“Sheet2”)
End Sub

Sheet1とSheet2 を別ブックの先頭の位置にコピーする

Sheet1 と Sheet2 を、Book3の先頭の位置に挿入するコードです。

Sub 別ブックのシート先頭にコピー()
Worksheets(Array(“Sheet1”, “Sheet2”)).Copy Before:=Workbooks(“Book3”).Sheets(1)
End Sub

Sheet1とSheet2 を別ブックの末尾の位置にコピーする

Sheet1 と Sheet2 を、Book3の末尾の位置に挿入するコードです。

Sub 別ブックのシート末尾にコピー()
Sheets(Array(“Sheet1”, “Sheet2”)).Copy After:=Workbooks(“Book3”).Sheets(Worksheets.Count)
End Sub

 

 

新規ブックに複数シートをシート名を指定してコピー

エクセルVBAで、新規ブックに複数シートをコピーしましょう。

新しいブックにシート全てコピーするコードです。

Sub 全シートを新規ブックにコピー()
ThisWorkbook.Sheets.Copy
End Sub

新しいブックにSheet1 と Sheet2をコピーするコードです。

Sub 複数シートのコピー()
Sheets(Array(“Sheet1”, “Sheet2”)).Copy
End Sub

こちらの記事もご覧ください。⇒エクセルVBAが初心者でも短期間でマスターできる楽パソ!音声と映像で自宅で学べる。

こちらの記事もご覧ください。⇒プログラミングスキルが初心者でも短期間でマスターできる楽パソ!音声と映像で自宅で学べる。

複数シートの選択

エクセルVBAを使って複数シートを選択してコピーする方法で、定例の作業を効率よく行うことができます。シートのコピーは簡単ですが、複数のシートが多ければ多いほど、時間もかかります。似たようなシート名があった場合、間違えて別なシートをコピーしてしまったことはないでしょうか。エクセルVBAだと、そんな失敗もありません。シート名や挿入する位置を指定して挿入したり、同じブック、または別なブックにもコピーできるので、時間を短縮し、効率よく仕事ができるようになります。

こちらの記事もご覧ください。⇒エクセルVBAで複数シートをコピーして1つのシートにまとめる方法!

エクセル・ワード・パワーポイント・アクセス・マクロVBA・WEBプログラミングを入門から応用までらくらくマスターできる ➡ 動画パソコン教材

エクセルのマクロとVBAを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓
ワード・エクセルパワーポイント・アクセスとエクセルマクロVBA・WEBプログラミング・パソコンソフト作成を入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓
VBA・Java・WEB・C#・HTML/CSSプログラミングを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓
ワード・エクセル・パワーポイント・アクセスを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓

ワード・エクセル・パワーポイント・アクセスとWEBプログラミングを入門から応用まで映像と音声でわかりやすく学ぶことができます。
↓ ↓ ↓ ↓ ↓