• ベストアンサー

VBA(Access)の日付を自動で追加したいです

VBAについての質問です。 日付をリストボックスに追加したいのですが、2013年から始まり、2014年、2015年となるごとに自動で追加されていくようにプログラムを組みたいです。 プログラミング初心者なのもので、どのように組めばいいのかがわかりません。 どうかご教授お願い致します。

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

  • ベストアンサー
  • x-1919
  • ベストアンサー率52% (91/173)
回答No.1

ちょっとどう答えたらいいのか悩む。 どうしたいのか具体的に書いてないので勝手な想像で書きます。 「日付をリストボックスに追加したい」とのことなので "2013/06/24" のような年月日タイプの日付を日付レベルでリストボックスに表示させてみる。 「2013年から始まり、2014年、2015年となるごとに自動で追加されていく」 とあるが、「いつからいつまで」の日付を表示させたいのかがまったくわからないので「今日の日付から 1年分の日付」つまり約 365個の日付をリストボックスに表示させる。 フォームにリストボックスを追加し、名前を listbox1 とした。 フォームが呼び出された時、つまり Load イベントでリストボックスに日付を追加する。 Private Sub Form_Load()   Me.listbox0.RowSourceType = "Value List" ' リストボックスの値集合タイプを "値リスト" にする   Dim currentDate As Date   Dim endDate As Date   currentDate = Date ' 今日の日付   endDate = DateAdd("yyyy", 1, currentDate) - 1 ' 今日の日付から 1年後の 1日前の日付   Do Until currentDate > endDate     Me.listbox0.AddItem currentDate ' 1日分ずつリストボックスに追加     currentDate = currentDate + 1   Loop End Sub もし仮に 「今年の 1月1日から 1年分の日付」 というのであれば以下のようにする。 currentDate = DateSerial(Year(Date), 1, 1) すべて勝手な想像なので外しまくっている可能性が大きいけど・・・

kanata828
質問者

お礼

早い回答、ありがとうございます! 参考にさせていただいて、なんとかうまくできました!

関連するQ&A

専門家に質問してみよう