- ベストアンサー
エクセルVBA シートの追加と名前の変更
エクセルに「原本」シートがあり、マクロを実行すると原本シートを5シート(5日分)追加し、 (1)一つ目に追加したシートのB2のセルに「追加する日の日付け」を入力し、 シート名にその日付をyymmdd形式で名前を付け、 (2)二つ目に追加したシートのB2のセルに「追加する日の次の日の日付け」を入力し、 ・・・同様の処理・・・ (6)一つ目の追加したシートをアクティブシートにする。 というように、連続した5日分のシートを追加したいと考えています。 VBAの全くの初心者ですので教えていただけると大変助かります。 そんな素晴らしいことが短時間で教えていただけるものなのでしょうか。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
ブックを用意する ALT+F11を押す 現れた画面で挿入メニューから標準モジュールを挿入する 現れたシートに下記をコピー貼り付ける sub macro1() dim s as string dim i as integer s = inputbox("Start Date (yyyy/m/d)") if not isdate(s) then exit sub on error goto errhandle for i = 4 to 0 step -1 worksheets("原本").copy after:=worksheets("原本") activesheet.range("B2") = datevalue(s) + i activesheet.name = format(datevalue(s) + i, "yymmdd") next i exit sub errhandle: msgbox "BAD SHEET NAME" end sub ファイルメニューから終了してエクセルに戻る マクロを実行する。
お礼
今回初めてOKwaveで質問をしました。 まずは回答の迅速さに驚愕しているところです。 週明けに職場で試したいと思います。 ありがとうございました。