- ベストアンサー
エクセルマクロでシート複製
こんばんは、エクセルでシート(1)とシート(2)を作成し、(1)の内容を(2)に反映させています。 この(1)(2)の組み合わせを何組も作りたいのですが、どのようにしたらよいのでしょうか? 例えば、シートA(1)とシートA(2)、シートB(1)とシートB(2)といった感じです。そこで数式を入れるのにSheetB(2)!A1セルに =SheetA(1)!A1というふうにそれぞれシート名を指定するのではなく、自動でシート名を入力させるというような方法はありませんでしょうか? 大変困っています。 よろしくお願い致します!!!!!!!!!!
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
質問を誤解しているかもしれませんが、Sheet1と、それを参照しているSheet2 2つのシートがあり、このペアのシートを複製し、複製されたペアのシートが、Sheet1とSheet2と同じような参照関係であればいいんですか? それなら Sheets(Array("Sheet1", "Sheet2")).Copy After:=Sheets(Sheets.Count) でどうでしょうか?
その他の回答 (3)
- hige_082
- ベストアンサー率50% (379/747)
一例です Sub test() ActiveSheet.Copy after:=Sheets(ActiveSheet.Name) End Sub 参考まで
- xls88
- ベストアンサー率56% (669/1189)
色々方法はあると思いますが、シートのIndexプロパティを使う例です。 Sheets("シートA").Copy After:=Sheets("シートA") Selection.SpecialCells(xlCellTypeConstants, 23).Select Selection.FormulaR1C1 = "=" & Sheets((ActiveSheet.Index) - 1).Name & "!RC"
- hana-hana3
- ベストアンサー率31% (4940/15541)
シート1とシート2を選択(グループ化)して、シートのコピーを作成します。 シートの選択方法 CtrlかSheftキーを押しながらシートタブをクリックします。 【グループ化】 http://trendy.nikkeibp.co.jp/article/tec/excel/20040309/107639/ http://www.eurus.dti.ne.jp/~yoneyama/Excel2007/excel2007-sheet5.html#sagyougroup シートのコピー 選択したシートタブをCtrlキーを押しながらドラッグします。 http://www.helpfulnotes.info/ex_katsyo02.html