Temp = lYearDays(i) DaysOffset = DaysOffset - Temp i = i + 1 Loop If DaysOffset < 0 Then DaysOffset = DaysOffset + Temp i = i - 1 End If lyear = i
Dim Leap As Integer Dim IsLeap As Boolean Leap = LeapMonth(i) IsLeap = False i = 1 Do While i < 13 And DaysOffset > 0 If Leap > 0 And i = (Leap + 1) And IsLeap = False Then i = i - 1 IsLeap = True Temp = LeapDays(lyear) Else Temp = lMonthDays(lyear, i) End If If IsLeap And i = (Leap + 1) Then IsLeap = False DaysOffset = DaysOffset - Temp i = i + 1 Loop
If DaysOffset = 0 And Leap > 0 And i = Leap + 1 Then If IsLeap Then IsLeap = False Else IsLeap = True i = i - 1 End If End If If DaysOffset < 0 Then DaysOffset = DaysOffset + Temp i = i - 1 End If lmonth = i lday = DaysOffset + 1