アプリ版:「スタンプのみでお礼する」機能のリリースについて

ある時点での満年齢を表示するため下記の[BEGDATE]に誕生日yyyy/mm/ddを書き[ENDDATE]にある時点のyyyy/mm/ddを書きテキストボックスのコントロールソースに下記の式を書きました。
=DateDiff("yyyy",[BEGDATE],[ENDDATE])
しかしこれだと年齢は出ますが誕生日を過ぎたある時点でも年齢か一才増えません。
どのように書けばよいのか教えてください。

A 回答 (2件)

式はこのようになります。


=DateDiff("yyyy",[BEGDATE],[ENDDATE]) - IIf(Format([BEGDATE], "mm/dd") > Format([ENDDATE], "mm/dd"), 1, 0)

ためしにDateDiff("yyyy", CDate("2008/12/31"), CDate("2009/1/1"))としてみてください。
結果は1になると思います。
このようにDateDiff関数は年数の引き算を行っているだけです、お気をつけ下さい。
    • good
    • 0
この回答へのお礼

お陰様でばっちり出来ました。
本当に有り難うございました。

お礼日時:2008/06/17 12:27

DateDiffで求まるのは1月1日の回数です。



年齢計算のマイクロソフトの頁です
http://office.microsoft.com/ja-jp/access/HA01055 …

参考URL:http://office.microsoft.com/ja-jp/access/HA01055 …
    • good
    • 0
この回答へのお礼

参考資料有り難うございました。
保存いたします。

お礼日時:2008/06/17 12:28

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!