人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

ACCESS2000で年齢計算をしたいのですが、DateDiff関数を使おうとすると、時間単位を”yyyy”にしても数え年齢で計算されてしまいます。満年齢で年齢を計算、表示するにはどうしたらよいのでしょうか?

●質問者: Hanayone
●カテゴリ:ウェブ制作
✍キーワード:単位 数え年 計算 関数
○ 状態 :終了
└ 回答数 : 4/4件

▽最新の回答へ

1 ● broad
●20ポイント

http://www.accessclub.jp/bbs/0033/beginers14113.html

年齢のもとめ方 --Access Club 初級者 Forum--

ここの情報でどうでしょうか。


2 ● reicha
●20ポイント

http://support.microsoft.com/default.aspx?scid=%2Fdirectory%2Fwo...

ƒ}ƒCƒNƒƒ\ƒtƒg ƒTƒ|[ƒg ƒIƒ“ƒ‰ƒCƒ“

ExcelのDATEDIF関数では,満年齢をちゃんと計算してくるのに対し,

AccessのDateDiff関数は,単に年の数字の差(Year(b)-Year(a))を返すだけなのです。

数式が長くてややこしくなりますが、このURLの方法をお試しください。


3 ● sinono
●20ポイント

http://www.accessclub.jp/actips/tips_98.htm

生年月日から自動で年齢を表示させる - 式ビルダの利用:AccessTips098

(関数で使いたいと予想して)

これでどうでしょうか?


4 ● noraniko
●20ポイント

Function GetAgeNen(pBirthDay, Optional pBaseDate) As Integer

Dim wBasedate

Dim wBirthDayMMDD As Date

Dim wBaseDateMMDD As Date

If IsDate(pBirthDay) Then

If IsDate(pBaseDate) Then

wBasedate = pBaseDate

Else

wBasedate = Date

End If

GetAgeNen = DateDiff(”yyyy”, pBirthDay, wBasedate)

wBirthDayMMDD = Format(pBirthDay, ”mm/dd”)

wBaseDateMMDD = Format(wBasedate, ”mm/dd”)

If wBirthDayMMDD > wBaseDateMMDD Then

GetAgeNen = GetAgeNen - 1

End If

If GetAgeNen < 0 Then

GetAgeNen = GetAgeNen + 1

End If

End If

End Function

◎質問者からの返答

試してみます!ありがとうございました!!

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ