Option Compare Database
Option Explicit
Public Function fModBusDay(ByVal dDay As Date) As Date
Dim stSQL As String
Dim rst As ADODB.Recordset
Dim lAdd As Long
Dim dHol As Date
TestWeekDay:
Select Case Weekday(dDay, vbMonday)
Case 1 To 5: lAdd = 0
Case Is = 6: lAdd = 2
Case Is = 7: lAdd = 1
End Select
dDay = DateAdd("d", lAdd, dDay)
stSQL = "SELECT HolDate FROM tbl_Holidays WHERE HolDate = #" & dDay & "#"
Set rst = CurrentProject.Connection.Execute(stSQL, , adCmdText)
If Not rst.BOF Then
dHol = rst(0)
rst.Close
End If
If dHol = dDay Then
dDay = DateAdd("d", 1, dDay)
GoTo TestWeekDay
Else
fModBusDay = dDay
GoTo ExitHere
End If
ExitHere:
End Function
|