ようこそ ゲスト さん、新規登録(無料)して気になる疑問を解決しませんか?

質問

質問者:bayside1 accessで日付から年度の開始日と終了日を自動表示したい
困り度:
  • 暇なときにでも
Access2000を使っています。

「今日の日付」(=Date()を使い自動表示しています)というエリアの日付を基に、年度の開始日と終了日を自動表示したいのです。


例えば

「今日の日付」が2008/3/29 だったら

 「開始日」に 2007/04/01
 「終了日」に 2008/03/31


「今日の日付」が2008/4/3 だったら

 「開始日」に 2008/04/01
 「終了日」に 2009/03/31


環境は、Access2000、winXPです。どなたかよい方法をご存知の方、回答よろしくお願いします。
質問投稿日時:08/03/29 07:18
質問番号:3903970
この質問に対する回答は締め切られました。

回答

良回答20pt

回答者:cocyan Dim Nendo as date

'***** 始めに開始日を決める ****

'・・・ 当日の処理日を取り込む         
Nendo = date
'・・・ 当日の月が4月より小さければ、1年前にする
if Month(Nendo) < 4 then Nendo = DateAdd("yyyy",-1,Nendo)
'・・・ 開始日を画面セット
Me!開始日 = Year(Nendo) & "/04/01"

'***** 終了日は、開始日に1年加算する ****
Nendo = DateAdd("yyyy",1,Nendo)
'・・・ 終了日を画面セット
Me!終了日 = Year(Nendo) & "/03/31"

これで開始日と終了日が求まります。              
種類:回答
どんな人:経験者
自信:自信あり
回答日時:08/03/30 13:46
回答番号:No.1
この回答へのお礼回答ありがとうございました。

関数のみで解決したかったので、cocyanさんのヒントを元に下記の関数で解決しました。

[日付] (=date())
[いつから] (開始日)
[いつまで] (終了日)

開始日
=Year(DateAdd("m",-3,[日付])) & "/04/01"
終了日
=Year([いつから])+1 & "/03/31"

とても良いヒントをいただきました。感謝です!