- ベストアンサー
VBA シート名を先月の名前にしたい
VBA シート名を先月の名前にしたい お世話になります。 excelのシート名を、当年先月の名前(2013年4月なら”2013年3月”)にしたいのです。 当月ならうまくいくのですが、VBAでいいコーディングがあればご教示ください。 宜しくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
> 当月ならうまくいくのですが 「どうやったか」は質問文中に書くべき =format(Now()-day(Now()),"yyyy年m月")
その他の回答 (3)
- keithin
- ベストアンサー率66% (5278/7941)
sub macro1() on error resume next activesheet.name = format(dateadd("M",-1,date), "yyyy年m月") end sub みたいな。
お礼
ありがとうございます。 うまくいきました。 感謝します。
- hallo-2007
- ベストアンサー率41% (888/2115)
こんな感じでは如何でしょうか。 Sub ボタン1_Click() Dim DDATE As Date DDATE = DateSerial(Year(Date), Month(Date), 0) ActiveSheet.Name = Year(DDATE) & "年" & Month(DDATE) & "月" End Sub
お礼
ありがとうございます。 フォームでボタンを作り実行し確認しました。 感謝します。
- tom04
- ベストアンサー率49% (2537/5117)
こんばんは! 一例です。 Sub Sheet名変更() Dim tmp As Variant tmp = DateAdd("m", -1, Date) ActiveSheet.Name = Year(tmp) & "年" & Month(tmp) & "月" End Sub こんな感じではどうでしょうか? ※ 当然のことながら同一Bookに同じシート名はつけることはできませんので、 1Sheetのみ限定となります。m(_ _)m
お礼
ありがとうございます。 うまくいきました。感謝します。
お礼
申し訳ありません ActiveSheet.Name = =format(Now()-day(Now()),"yyyy年m月") でうまくいきました。 感謝します。