Как проверить, правильно ли юзер ввёл текст в формате "И.О. Фамилия" с помощью объекта "VBScript.RegExp"?
Сам нашёл решение. Макрос учитывает фамилии, в которых есть один дефис, пример такой фамилии: Петров-Водкин.
Макрос
Sub Макрос()
Dim ФИО As String
'1. Запись в переменную ФИО, которую надо проверить.
ФИО = "А.С. Пушкин"
'2. Проверка ФИО.
' Результат выводится в View - Immediate Window.
Debug.Print ПроверитьФИО(ФИО)
End Sub
Private Function ПроверитьФИО(ФИО As String) As Boolean
Dim RegExp_ As Object
' Создание объекта "RegExp".
Set RegExp_ = CreateObject("VBScript.RegExp")
' Большие и маленькие буквы - это разные буквы.
RegExp_.IgnoreCase = False
' Что искать.
RegExp_.Pattern = "^[А-Я]\.[А-Я]\. ([А-Я][а-я]{1,}|[А-Я][а-я]{1,}-[А-Я][а-я]{1,})$"
' Поиск.
ПроверитьФИО = RegExp_.Test(ФИО)
End Function