クエリを使った年齢計算
解説
テーブルに「生年月日」フィールドがある時は、クエリに年齢計算用の演算フィールドを設けることで年齢計算をすることが出来ます。 計算は「生年月日」と「現在日付(@Now)」をDateDiff関数で行いますが、当年の誕生日が来ていない場合は「1」を引かねばなりません。 これをIIF関数で調整します。
- (ポイント)
- DateDiff関数で年の差を取り出す
- 誕生日前か否かの調整をIIF関数で行う
作成例
次が年齢計算クエリです
計算フィールドの式の作戦手順
- 生年月日から現在までの年の経過数をDateDiff関数で計算
DateDiff("yyyy",[生年月日],Now()) - 今日が誕生日より前だったら、「-1」とする計算をIIF関数で行う
IIf(Format(Now(),"mmdd") < Format([生年月日],"mmdd"),-1,0) - 上の式を組み合わせて、表題を付け加えます。
年齢: DateDiff("yyyy",[生年月日],Now())+IIf(Format(Now(),"mmdd")<Format([生年月日],"mmdd"),-1,0)
(この項終わり)