
こんにちは。
下記のようなマクロを作成したいのですが、どなたかお教えいただけますでしょうか。
①Sheet AのA1~F27のデータをコピー
②新しいシートを右側に挿入
③新しいシート名をSheet AのH2セルと同じにする("2016年5月"など)
④コピーした内容を貼り付け
毎月右側に新しいシートが追加されていくようにしたいです。
作業は月1です。H2セルの日付は作業したときの月になります。
例)Sheet A / 2016年5月 / 2016年6月 ・・・
初心者過ぎる質問で申し訳ないのですがよろしくお願いいたします。
No.1ベストアンサー
- 回答日時:
簡単ですが、こんなのでも動くと思います。
---------------------------------------------------------------------------------------
Sub Macro1()
Dim strSNM As String
strSNM = Worksheets("sheetA").Range("H2")
Worksheets.Add(After:=Worksheets(Worksheets.Count)).Name = strSNM
Worksheets("sheetA").Range("A1:F27").Copy
Worksheets(strSNM).Range("A1").Select
ActiveSheet.Paste
End Sub
---------------------------------------------------------------------------------------
ただ気になるのは"sheetA"のセルH2に入力されている日付です。
実際に入力されている値は「2016/1/31」などとなっているのではないでしょうか?
シート名に「/(スラッシュ)」は使えないのでその場合は追加したシートに名前を付ける際エラーになってします。
No.2
- 回答日時:
こんばんは!
すでに回答は出ていますが、「A」SheetのH2セルにはシリアル値が入っているという前提です。
Sub Sample1()
Dim wS As Worksheet
Worksheets.Add After:=Worksheets(Worksheets.Count)
Set wS = Worksheets(Worksheets.Count)
With Worksheets("A") '←「A」は実際のSheet名に!
wS.Name = Format(.Range("H2"), "yyyy年m月")
.Range("A1:F27").Copy wS.Range("A1")
End With
End Sub
※ 元データのSheet名が「A」というコードにしていますので、
実際のSheet名にしてください。
※ 月に1度だけ実行するコードです。
2度以上実行するとすでに存在するSheet名にすることはできませんのでエラーになります。
(日付までをSheet名にするのであれば1日1度は可能です)m(_ _)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
-
エクセル:マクロ「Application.CutCopyMode = False」って?
Excel(エクセル)
-
EXCELのVBAでシートコピーをしたとき元のマクロを削除するには?
Excel(エクセル)
-
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
-
4
Excel2000/VBA:値と書式のみ貼り付けたい。
Excel(エクセル)
-
5
別ブックをダイアログボックスで指定してそこにあるシートをコピーしたい
Excel(エクセル)
-
6
【VBA】特定の値が入った行をコピーして別シートに貼り付ける方法をおしえていただきたいです。
Excel(エクセル)
-
7
vba 2つの条件が一致したらコピーして別シートに値のみ貼り付け
Visual Basic(VBA)
-
8
B列の最終行までA列をオートフィル
Visual Basic(VBA)
-
9
VBAマクロでシートコピーした新シートにコピー元シートとの計算式の入れ方を教えて下さい。
Visual Basic(VBA)
-
10
Excel_マクロ_現在開いているシートにマクロを実行したいです
Visual Basic(VBA)
-
11
別のシートから値を取得するとき
Visual Basic(VBA)
-
12
EXCEL VBA セルに既に入力されている文字に文字を追加する
Excel(エクセル)
-
13
特定の文字がある行以外を削除するマクロ
その他(Microsoft Office)
-
14
エクセルのシート名変更で重複した時のvbaの処理
Visual Basic(VBA)
-
15
excelのマクロで該当処理できなければ飛ばして進むにはどうすればよいのでしょうか
Visual Basic(VBA)
-
16
VBAで繰り返しコピーしながら下へ移動させる方法
Excel(エクセル)
-
17
Excel VBA 空白セルがあったらメッセージボックスで知らせたい
Visual Basic(VBA)
-
18
マクロで最終行を取得してコピーしたい
Visual Basic(VBA)
-
19
VBA 別ブックからコピペしたいのですが、軽くしたいです
Visual Basic(VBA)
-
20
エクセルのラベルの値(文字列)を垂直方向で中央揃えにするには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Office2021のエクセルで米国株...
-
Excelシートの保護時にデータの...
-
エクセルで1月0日と表示される!!
-
エクセルで条件に一致したセル...
-
マクロ 新しいシートにデータ...
-
EXCEL関数でシート名が変わる可...
-
シート参照で変数を使いたい(EX...
-
Excelで複数シートの選択セルを...
-
エクセルについて
-
Excel VBAでサブフォルダ内のフ...
-
日付が未入力の際はゼロか、空...
-
オプションボタンを別シートに連動
-
Excelのファイル容量が減らない...
-
シート保護とオートSUM機能...
-
excel 1行の横セル内容を表を ...
-
(Excel)あるセルに文字を入力...
-
【VBA Excel】ドラッグアンドド...
-
別シートのセルを絶対参照にする
-
Excelの「0」だけ非表示、小数...
-
エクセルでシート名をセルに入...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Office2021のエクセルで米国株...
-
Excelの「0」だけ非表示、小数...
-
エクセルで条件に一致したセル...
-
Excelで複数シートの選択セルを...
-
エクセルについて
-
エクセルで1月0日と表示される!!
-
Excelシートの保護時にデータの...
-
日付が未入力の際はゼロか、空...
-
ExcelでTODAY関数を更新させな...
-
EXCELのハイパーリンクのセルを...
-
エクセルで、加筆修正したセル...
-
Excelでスクロールすると文字が...
-
複数シートの同じセル内容を1シ...
-
マクロ 新しいシートにデータ...
-
別シートのセルを絶対参照にする
-
ハイパーリンク で『指定された...
-
iPhoneのExcelアプリで、別のシ...
-
エクセルで複写のように自動入...
-
エクセルで指定のセルのみ完全...
-
エクセル ハイパーリンクで画像...
おすすめ情報