- ベストアンサー
エクセル、シートのコピーについて
現在、エクセルでファイルを作成中なのですが、あるシートを20ほどコピーしたいのです。名前はあとで変更するとして、一度に20ものコピーは可能ですか? シートのタグを右クリックして、いちいちひとつずつやっていたのでは時間がかかりますので。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
シートのタグを右クリックして (2)を作る。 Ctrlキーで元のシートと(2)のシートを選択してコピーで(3),(4)を作成 同様に(5)~(8),(9)~(16)とすれば5回で20シートのコピーは可能です。 面倒なら「新しいマクロの記録」を使い Sub Macro1() Sheets("Sheet1").Select Sheets("Sheet1").Copy After:=Sheets(1) End Sub 上記の動作を20回繰り返すようにすればいいので Sub Macro1() For i = 1 To 20 Sheets("Sheet1").Select Sheets("Sheet1").Copy After:=Sheets(1) Next i End Sub と編集してマクロを実行する。
その他の回答 (2)
- mu2011
- ベストアンサー率38% (1910/4994)
Ctrlキー&シートタブをドラッグする方法しか知りませんが如何でしょうか。 コピー済みシートをグループ選択すれば数回で済むと思います。 因みに新規シートならshift+F11を押しっぱなしで作成できます。
お礼
どうもありがとうございました。
- merlionXX
- ベストアンサー率48% (1930/4007)
VBAなら一瞬で出来ますよ。簡単ですから試してみてください。 1.Altキー+F11キーでVisualBasicEditorを呼び出します。 2.メニューから挿入、標準モジュールで、出てきたコードウィンド(右側の白い広い部分)に以下のコード(Sub~End Sub)をコピペします。 Sub TEST01() For i = 1 To 20 Sheets("Sheet1").Copy After:=Sheets(Sheets.Count) ActiveSheet.Name = "Copy" & i Next End Sub 3.Alt+F11キーでワークシートへもどります. 4.メニューから、ツール、マクロ、マクロで出てきたマクロ名(test01)を選択して実行 これでSheet1を20回複製し、それぞれにCopy1~20の名前をつけます。複製したいシート名が違うならSheet1をその名前に書き換えてご使用ください。
お礼
どうもありがとうございました。
お礼
どうもありがとうございました。