EmersonH.Com

Transforming Knowledge into Power

  • Increase font size
  • Default font size
  • Decrease font size
Home VB.Net 2008 Date Time datediff busniess days

datediff busniess days

E-mail Print

Public Function GetBusinessDayDifference(ByVal date1 As Date, ByVal date2 As Date) As Integer
Dim startDate As Date = CDate(IIf(date1 < date2, date1, date2))
Dim endDate As Date = CDate(IIf(date1 > date2, date1, date2))
Dim difference As TimeSpan = endDate - startDate
Dim totalDays As Integer = difference.Days
Dim weeks As Integer = totalDays \ 7
Dim days As Integer = totalDays Mod 7
Dim businessDays As Integer = weeks * 5

For offset As Integer = 1 To days
Select Case startDate.AddDays(offset).DayOfWeek
Case DayOfWeek.Monday, _
DayOfWeek.Tuesday, _
DayOfWeek.Wednesday, _
DayOfWeek.Thursday, _
DayOfWeek.Friday
businessDays += 1
End Select
Next

Return businessDays

End Function