• ベストアンサー

セルの日付をボタンで変えるには?

セルA1に2005年1月という書式で日付が入っているのですが(シリアル値で。日は1日で固定)、この日付を、ボタンで変更したいです。 [前月]ボタン 月を1減らす [次月]ボタン 月を1増やす [前年]ボタン 年を1減らす [次年]ボタン 年を1増やす ということをコマンドボタンで行いたいと思っています。 Formatを駆使すればなんとかできそうなのですが、もっとましな方法はないでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 >Formatを駆使すればなんとかできそうなのですが、 Formatは関係ないのでは? DateAdd関数で出来ると思います。 +1年の場合だと、 Range("A1").Value = DateAdd("yyyy",1,Range("A1").Value) 後は、ヘルプを参照して下さい。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

A1に2005/1/1といれ、書式をyyyy"年"mm"月"としておきます。 シート上にコマンドボタンを1つ貼りつけ、ダブルクリックするとVBE画面になり Private Sub CommandButton1_Click() End Sub となりますから、下記1行入れます。 Private Sub CommandButton1_Click() Cells(1, 1) = DateSerial(Year(Cells(1, 1)), Month(Cells(1, 1)) + 1, 1) End Sub デザインモードを脱して、ボタンをクリックすると 2005年01月 2005年02月 2005年03月 ・・・ と進みます。 前月ボタンは Month(Cells(1, 1))-1 に変えれば良い。 なおボタンはCaptionを次月や前月に設定すること。 前年、翌年も Year(Cells(1, 1))+1 などで出来ます。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

A1に2005/1/1といれ、書式をyyyy"年"mm"月"としておきます。 シート上にコマンドボタンを1つ貼りつけ、ダブルクリックするとVBE画面になり Private Sub CommandButton1_Click() End Sub となりますから、下記1行入れます。 Private Sub CommandButton1_Click() Cells(1, 1) = DateSerial(Year(Cells(1, 1)), Month(Cells(1, 1)) + 1, 1) End Sub デザインモードを脱して、ボタンをクリックすると 2005年01月 2005年02月 2005年03月 ・・・ と進みます。 前月ボタンは Month(Cells(1, 1))-1 に変えれば良い。 なおボタンはCaptionを次月や前月に設定すること。 前年、翌年も Year(Cells(1, 1))+1 などで出来ます。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

A1に2005/1/1といれ、書式をyyyy"年"mm"月"としておきます。 シート上にコマンドボタンを1つ貼りつけ、ダブルクリックするとVBE画面になり Private Sub CommandButton1_Click() End Sub となりますから、下記1行入れます。 Private Sub CommandButton1_Click() Cells(1, 1) = DateSerial(Year(Cells(1, 1)), Month(Cells(1, 1)) + 1, 1) End Sub デザインモードを脱して、ボタンをクリックすると 2005年01月 2005年02月 2005年03月 ・・・ と進みます。 前月ボタンは Month(Cells(1, 1))-1 に変えれば良い。 なおボタンはCaptionを次月や前月に設定すること。 前年、翌年も Year(Cells(1, 1))+1 などで出来ます。

関連するQ&A