ВВЕРХ

Функция VBA: WeekdayName

Описание

Функция VBA WeekdayName возвращает имя дня недели на основе его номера.


Синтаксис WeekdayName

WeekdayName(дата)

Или

WeekdayName(дата, первая_день_недели)

Нумерация

По умолчанию первый день недели – воскресенье (1), а последний – суббота (7).

Чтобы изменить нумерацию так, чтобы понедельник был первым днем ​​недели (1), а воскресенье – последним (7), добавьте значение 2 как второй аргумент при использовании этой функции:

WeekdayName(дата, 2)

Пример VBA WeekdayName

Использование функции WeekdayName для отображения названия 7 дней:

Sub WeekdayNameExample1()

     MsgBox WeekdayName(1) 'Возвращает: понедельник
     MsgBox WeekdayName(2) 'Возвращает: вторник
     MsgBox WeekdayName(3) 'Возвращает: среда
     MsgBox WeekdayName(4) 'Возвращает: четверг
     MsgBox WeekdayName(5) 'Возвращает: пятница
     MsgBox WeekdayName(6) 'Возвращает: суббота
     MsgBox WeekdayName(7) 'Возвращает: воскресенье
    
End Sub

Функция WeekdayName также может отображать сокращенную версию дня, введя значение как второй аргумент:

Sub WeekdayNameExample2()

     MsgBox WeekdayName(1, True) 'Возвращает: Пн.
     MsgBox WeekdayName(2, True) 'Возвращает: Вт.
     MsgBox WeekdayName(3, True) 'Возвращает: Ср.
     MsgBox WeekdayName(4, True) 'Возвращает: Чт.
     MsgBox WeekdayName(5, True) 'Возвращает: Пт.
     MsgBox WeekdayName(6, True) 'Возвращает: Сб.
     MsgBox WeekdayName(7, True) 'Возвращает: Вс.
    
End Sub

Название дня согласно дате

Используя функции Weekday и WeekdayName, вы можете получить название дня недели по дате:

Sub WeekdayNameExample3()

    MsgBox WeekdayName(Weekday("30/11/2020", 2)) 'Возвращает: понедельник
    
End Sub

Хотя проще перейти напрямую через функцию форматирования FORMAT:

Sub WeekdayNameExample4()

    MsgBox Format("30/11/2020", "dddd") 'Возвращает: понедельник
    
End Sub
Функция, возвращающая порядковый номер дня недели: WEEKDAY