Windows8でExcel2000を使っています。
こういうマクロはどう書けばいいんでしょうか?
同一ファイル内で、シートを複数枚コピー。
複数選択したセルに入力された文字列を、上記でコピーされたシート名に反映したい。
「原本」というシート名のシートがあり、それを元に一年分の表を作りたいのですが
今は手で11枚コピーを作った後1枚ずつ名前変更でやっています。
シート名にしたい文字列は現在なら「2015年01月」~「2015年12月」です。
セルに「2015年01月」~「2015年12月」を入力、選択した後マクロ実行で
シート名変更に反映できればありがたいです。
No.1ベストアンサー
- 回答日時:
ふつーに、必要な数だけシートのコピーと名前付けを繰り返すだけです。
sub macro1()
dim h as range
on error resume next
for each h in selection
worksheets("原本").copy after:=worksheets(worksheets.count)
activesheet.name = h.value
next
end sub
>入力、選択した後マクロ実行でシート名変更に反映
記入した内容が「シート名として適切ではない」場合(たとえば同じ名前のシートが既にある等を含む)の処置について考慮されていませんね。
必要に応じて自力で適切に工夫してみて下さい。
keithinさん、ありがとうございます。
書いていただいたマクロを登録しましたらコピーしてくれました。
自分でもやってみたのですが、複数選択したセルに入力された文字を
シート名にすることはいろいろ考えてみたいと思います。
Sheets("原本 (2)").Name = "2015年01月"
この部分の"2015年01月"などのところを絶対値で指定できれば、とか考えています。
Sub Macro1()
Sheets("原本").Select
Sheets("原本").Copy Before:=Sheets(1)
Sheets("原本").Select
Sheets("原本").Copy Before:=Sheets(1)
Selection.Copy
Sheets("原本 (2)").Select
Sheets("原本 (2)").Name = "2015年01月"
Range("C3").Select
Application.CutCopyMode = False
Selection.Copy
Sheets("原本 (3)").Select
Sheets("原本 (3)").Name = "2015年02月"
End Sub
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) excelにて、特定の列に数字入力してあれば、入力してある行コピーして 別ファイルに張り付ける 2 2022/08/11 05:33
- Excel(エクセル) ②Excel 簡単にシートコピーしたら前日の残高と日付を変更させたい→マクロの記録でエラーが出ます 8 2022/07/16 20:40
- Visual Basic(VBA) VBAマクロでシートコピーした新シートにコピー元シートとの計算式の入れ方を教えて下さい。 5 2022/11/20 09:48
- Excel(エクセル) マクロVBA別Excelブックにデータ転記 2 2022/07/10 23:35
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
- Visual Basic(VBA) 最終行の指定について教えてください。 複数シートを1シートへまとめる下記マクロでは各シートの6行目を 1 2022/10/04 18:37
- Visual Basic(VBA) 集めたシートのシート名を変更したい。 下記のコードでサブフォルダにあるファイルのSheet3を集めて 6 2022/08/23 10:38
- Excel(エクセル) 複数セルデータを別シートの単一セルにコピーしたい。(詳細をご参照ください) 1 2022/12/14 15:08
- Excel(エクセル) Excel シート複数 金額日計表と日付 簡単にシートコピーしたら前日の残高と日付を変更させたい 1 2022/07/15 22:10
- Excel(エクセル) VBA ふたつの同じ様式シートのセルをコピーしたい 2 2023/03/08 15:28
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
シートをコピーして シートに...
-
Excelでシート名と最終更新日を...
-
Excel で選択しているセルの行...
-
Excelで同じシートのコピーを一...
-
Excel2007で、太字にした行のみ...
-
別シート参照のセルをシート毎...
-
EXCEL:同じセルへどんどん足し...
-
Accessのスプレッドシートエク...
-
EXCELで1ヶ月分の連続した日付...
-
エクセルの複数シートの保護を...
-
VBAでシートコピー後、シート名...
-
エクセルVBAでパスの¥マークに...
-
エクセルでファイルを開いたと...
-
Excelで連続印刷をするマクロ
-
エクセル マクロでシート自動...
-
エクセルで前シートを参照して...
-
「マクロ」の足し算の式を教え...
-
Excel、同じフォルダ内のExcel...
-
Excel にて非表示行を探すワー...
-
VBAで条件によりフォントサイズ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【マクロ】毎回、ファイル名が...
-
【マクロ】顧客番号にて一致さ...
-
エクセルのマクロで指定条件一...
-
シートをコピーして シートに...
-
Excel マクロ 他ブックのシート...
-
Excel シートを自動作成、セル...
-
EXCELVBA データを自動で別シー...
-
シートをコピー、シート名を変更
-
エクセルのマクロ設定について...
-
Excelでシート名と最終更新日を...
-
Excel で選択しているセルの行...
-
Excel VBA 検索して該当行を抽出
-
新しいマクロの記録でコピーし...
-
エクセル マクロ 任意のファ...
-
Excelで同じシートのコピーを一...
-
エクセルの複数シートの保護を...
-
条件に応じて特定の行を非表示...
-
エクセルVBAでパスの¥マークに...
-
EXCEL:同じセルへどんどん足し...
-
VBAでシートコピー後、シート名...
おすすめ情報