hello i've got a question regarding the following code made by raskew .. i understand it but there is a small part i didn;t get in the "inthold" variable he did add the date difference which is an int number to a binary result ...that i don;t get it all .. what did he want from this result .. i understand the diff part but what about the after the ADD part ..thanks for ur time guys originally posted by raskew Function fAgeYMD(StartDate As Date, EndDate As Date) As String 'Purpose: Returns the difference between StartDate and EndDate in full years, months and days 'Coded by: raskew 'To call: ' ? fAgeYMD(#7/6/54#, #10/3/84#) 'Returns: ' 30 years 2 months 28 days Dim inthold As Integer Dim dayHold As Integer inthold = Int(DateDiff("m", StartDate, EndDate)) + _ (EndDate < DateSerial(year(EndDate), month(EndDate), Day(StartDate))) If Day(EndDate) < Day(StartDate) Then dayHold = DateDiff("d", StartDate, DateSerial(year(StartDate), month(StartDate) + 1, 0)) & Day(EndDate) Else dayHold = Day(EndDate) - Day(StartDate) End If fAgeYMD = Int(inthold / 12) & " year" & IIf(Int(inthold / 12) 1, "s ", " ") _ & inthold Mod 12 & " month" & IIf(inthold Mod 12 1, "s ", " ") _ & LTrim(str(dayHold)) & " day" & IIf(dayHold 1, "s", "") End Function