Check if the current day is set within two business days

The user can select the start day and end day in the form. (Say Friday to Monday). How can I check if the current weekday is between these two weekdays?

Dim WEstart As DayOfWeek = 5 'Friday Dim WEend As DayOfWeek = 1 'Monday If Date.Now.DayOfWeek >= WEstart And Date.Now.DayOfWeek <= WEend Then Return True Else Return False End If 

not working correctly.

+4
source share
2 answers

try it. It checks the days between Friday and Monday. That is, it returns True on Friday, Saturday, Sunday, and Monday.

If the day of the week is Tuesday, Wednesday, or Thursday, it returns false.

 Dim startday As DayOfWeek = DayOfWeek.Friday Dim endday As DayOfWeek = DayOfWeek.Sunday Dim today As DayOfWeek = DateTime.Now.DayOfWeek If endday >= startday Then Return (today >= startday AndAlso today <= endday) Else Return (today >= startday OrElse today <= endday) End If 
+2
source

This seems to work for me:

 Sub Main() Debug.WriteLine(IsBetween(Now, DayOfWeek.Monday, DayOfWeek.Friday)) End Sub Function IsBetween(vDate As DateTime, startDay As DayOfWeek, endDay As DayOfWeek) If startDay <= endDay Then Return vDate.DayOfWeek >= startDay And vDate.DayOfWeek <= endDay Return vDate.DayOfWeek <= endDay Or vDate.DayOfWeek >= startDay End Function 
0
source

Source: https://habr.com/ru/post/1482977/


All Articles