Эта функция возвращает TRUE
, когда st
содержит правильное название месяца:
Function isMonthName(st As String) As Boolean
Dim test
On Error Resume Next
test = DateValue(st & " 1, 1999")
isMonthName = IIf(Err, False, True)
End Function
Примеры:
isMonthName("july")
возвращает TRUE
.
isMonthName("julyy")
возвращает FALSE
.
Я не уверен, что это будет работать во всех регионах, но для меня это нормально.
Функция просто вставляет строку в строку с указанием дня и года ("____ 1, 1999
") и проверяет, является ли она действительной датой, с помощью функции DateValue
. Если это не работает в вашем регионе, просто измените, что вам, вероятно, просто нужно изменить строку, чтобы представить «длинную дату» вашего региона.