Функция VBA Weekday возвращает номер дня недели (от 1 до 7) для заданной даты.
Weekday(дата)
Или
Weekday(дата, первая_день_недели)
По умолчанию первый день недели - воскресенье (1), а последний - суббота (7).
Чтобы изменить нумерацию так, чтобы понедельник был первым днем недели (1), а воскресенье – последним (7), добавьте значение 2 как второй аргумент при использовании этой функции:
Weekday(дата, 2)
Использование функции Weekday для отображения номера дня недели для нескольких дат:
Sub exemple() MsgBox Weekday(#11/2/2020#, 2) 'Возвращает: 1 MsgBox Weekday("3.11.20", 2) 'Возвращает: 2 MsgBox Weekday("4 nov 2020", 2) 'Возвращает: 3 MsgBox Weekday("5/11/2020 17:30:21", 2) 'Возвращает: 4 End Sub
Использование функции Weekday для различения между будним и выходным днем:
Sub exemple() If Weekday(Now, 2) < 6 Then MsgBox "Будный день..." Else MsgBox "Это выходные!" End If End Sub