• 締切済み

ACCESS2000での年齢計算(数え)

こんにちは。お寺関係で仕事してます。 テキストボックスに生年月日を入力すると、 隣のテキストボックスに行年齢(数え歳)が 自動的に数値として入力されるようにしたい のですが、どうしたらいいでしょうか。 満年齢と違って、生まれた歳を1才とし 1月1日を迎えると2才になります。 例えば、6月に産まれた子供は、来年の 6月まで0才ですが、行年齢では産まれたとき 1才で、1月1日になると2才になります。 満年齢では8ヶ月であっても、行年齢では 2才になります。 今年で何歳?と聞かれたときに、誕生日が 来ていなければ+1歳ですが、来ていれば そのままですよね。誕生日が来ている、 いなに関わらず「今年で*歳」に+1歳が 行年齢になります。 何分お寺ですので、どうしても行年齢が 必要なわけです。 初心者ですが、是非教えてください。

みんなの回答

  • Zz_zZ
  • ベストアンサー率44% (756/1695)
回答No.3

西暦の4桁は year 関数でも取得できますが、簡単には、 DateDiff("yyyy",Date(),[Birth])+1 で可能です。12/31 と 1/1 の間は 1 ですので、+1 する必要が有ります。

  • Zz_zZ
  • ベストアンサー率44% (756/1695)
回答No.2

(A) DatePart("yyyy",Date(),4) => 2001    本日の日付け (B) [Birth]=1989/01/01 の場合、    DatePart("yyyy",[Birth],4) => 1989 A-B+1 のように出来れば良いような気がしますが... 2001/12/31 生まれでも、2002/01/01 には、二歳になると思います。

回答No.1

数えの方が満年齢よりも簡単な気がするのは勘違いでしょうか? 今日の日付がy年??月??日で、誕生日がx年??月??日なら、数え年はそれぞれの日付に関係なく、y-x+1才ですよね。 計算についてでなく、フォーム上で誕生日が入力されたときにどんなイベントハンドラで処理すればよいか、という質問であれば補足してください。

関連するQ&A