[AccessD] Age calculation

Gustav Brock Gustav at cactus.dk
Mon Jun 25 10:06:14 CDT 2007


Hi Gary

Some are (they decide for themselves when to celebrate it, many use the following weekend) but most if not all European public authorities and date or age sensitive corporations like insurance companies rely on the common sense rules of "last day of February" or "if your birthday is a day of February, it will never fall in any other month than February".
Taiwan also follows this rule:

http://en.wikipedia.org/wiki/Leap_year 

Browse to the bottom and read about these "leaplings" ...

/gustav

>>> garykjos at gmail.com 25-06-2007 16:17 >>>
I think that is the right answer myself. A person born on 2/29/1992 is
not 5 until 3/1/1997. On 2/28/1997 they are still 4 aren't they?

GK

On 6/25/07, Gustav Brock <Gustav at cactus.dk> wrote:
> Hi Steve
>
> Sorry, it still fails miserably for, say, these dates:
>
> DOB = #2/29/1992#
> AtDay = #2/28/1997#
>
> returning 4 and not 5.
>
> /gustav
>
> >>> miscellany at mvps.org 23-06-2007 22:57 >>>
> Hehe.  Answering my own question.  I wouldn't mind $5 for every time I
> have used that expression over the last 12 years, on the assumption that
> I had it licked.
>
> And now I see the obvious - in the case of a 29 February birthday,
> evaluating age on 28 February in a non leap year works correctly, but
> evaluating age on 28 February during a leap year, it gives the wrong figure.
>
> So, I have modified accordingly...
>
> Age: DateDiff("yyyy",[DOB],[DateAt])+(Format([DOB]+(Format([DOB],"mmdd")
> =Format([DateAt],"mmdd")="0229"),"mmdd")>Format([DateAt],"mmdd"))
>
> Regards
> Steve
>
>
> Steve Schapel wrote:
> > However, I can't find an example where the following does not work
> > correctly.  Can you?
> >
> > Age: DateDiff("yyyy",[DOB],[DateAt])+(Format([DOB]+(Format([DOB],"mmdd")
> > ="0229"),"mmdd")>Format([DateAt],"mmdd"))
> --





More information about the AccessD mailing list