Function Next_Work_Date(dtmNextWorkDate As Date) As Date
Dim dbs As Database
Dim rstHoliday As Recordset 'Record set to eliminate Holidays
Dim blnFoundWorkDay As Boolean 'Found Next Business Day
Set dbs = CurrentDb()
Set rstHoliday = dbs.OpenRecordset("tblHoliday", dbOpenSnapshot,
dbReadOnly)
blnFoundWorkDay = False
dtmNextWorkDate = DateAdd("d", 1, dtmNextWorkDate)
Do Until blnFoundWorkDay 'Determine what the next business day is
If Weekday(dtmNextWorkDate, vbMonday) > 5 Then 'It is Saturday or
Sunday
dtmNextWorkDate = DateAdd("d", 1, dtmNextWorkDate) 'Look at
next day
Else
'See if the day is a holiday
rstHoliday.FindFirst ("[holiday_date] = #" & dtmNextWorkDate &
"#")
If rstHoliday.NoMatch Then 'Not a holiday
blnFoundWorkDay = True 'It is a business day
Else 'It is a holiday
dtmNextWorkDate = DateAdd("d", 1, dtmNextWorkDate) 'Look at
next day
End If
End If
Loop
Next_Work_Date = dtmNextWorkDate
End Function