VB 6.0 - how to compute age? - Asked By Ralph Acido on 28-Feb-06 08:47 PM

hello everyone! anyone who have an idea on how to compute the age of a person base from the date of birth and the current date in decimal format? e.g.(8.5, 7.75, 5.25) thank you in advance...

SQL Query - Asked By drammer _ on 28-Feb-06 10:33 PM

select ROUND((DATEDIFF(d, dateField, getdate()) / 365.25), 0, 1)+((DATEDIFF(d, dateField, getdate()) %  365)/30)/12.0 from yourTable

see this function - Asked By Venkat K on 28-Feb-06 10:35 PM

Public Function GetAccurateAge(ByVal dtefrom As Date, _
   ByVal dteto As Date) As Integer
On Error GoTo ErrHandler
   Dim intFromDay As Integer, intFromMon As Integer, intFromYr As Integer
   Dim intToDay As Integer, intToMon As Integer, intToYr As Integer
   Dim intResultAge As Integer
   intFromYr = Year(dtefrom)
   intFromMon = Month(dtefrom)
   intFromDay = Day(dtefrom)
   intToYr = Year(dteto)
   intToMon = Month(dteto)
   intToDay = Day(dteto)
   If intFromYr <= intToYr Then
      intResultAge = intToYr - intFromYr
      GetAccurateAge = -1: Exit Function ' invalid value
   End If
   If intFromMon <= intToMon Then
         If (intFromMon = intToMon) And (intFromDay > intToDay) Then
            intResultAge = intResultAge - 1
            intResultAge = intResultAge
         End If
      intResultAge = intResultAge - 1
   End If
   GetAccurateAge = intResultAge
   Exit Function
   GetAccurateAge = -1
End Function

your program is working but? - Asked By Ralph Acido on 01-Mar-06 12:09 AM

thank you.. your program is really working.. it returns the accurate age in a whole number... what im lookig for is the age should be in a floating point format.. e.g(7.5, 8.25 like that...)