На главную страницу   На домашнюю страницу автора
Примечание
1. Что? Зачем?
2. Как внедрить макрос и назначить его выполнение клавиатуре?
3. Преобразование из ASCII в UNICODE и обратно
4. Увеличение / уменьшение межбуквенного интервала выделенного текста
5. Увеличение / уменьшение растояния между абзацами
6. Увеличение / уменьшение межстрочного интервала
7. Последний предлог в строке
8. Первый дефис в строке
9. Создание вхождения указателя
10. Поиск "ц" и "ч", после которых следует точка или запятая
11. Удалить гиперссылку
12. Вставка элемента оглавления
13. Поменять дефис между цифрами на тире
14. Поставить препинание после сноски
15. Удаление пробела перед знаком сноски
16. Поиск инициалов при фамилии и вставка неразравных пробелов
17. Вспомогательные функции
18. Причесывание текста

Вспомогательные функции

Функия IsDigit возвращает значение True, если аргумент функции арабская цифра

'*****************************************************
Function IsDigit(st As String) As Boolean ' Функция определения арабской цифры
    If Asc(st) >= Asc("0") And Asc(st) <= Asc("9") Then
        IsDigit = True
    Else
        IsDigit = False
    End If
End Function

Функия isRimDig возвращает значение True, если аргумент функции римская цифра

'*****************************************************
Function isRimDig(s As String) As Boolean ' Функция определения римской цифры
    If Asc(s) = Asc("I") Or Asc(s) = Asc("V") Or Asc(s) = Asc("X") Or Asc(s) = Asc("L") Or Asc(s) = Asc("M") Then
        isRimDig = True
        Exit Function
    End If
    isRimDig = False
End Function

Функия IsPrepinanie возвращает значение True, если аргумент функции знак препинания

'*******************************************
Function IsPrepinanie(st As String) As Boolean ' Определение знака препинания
    Select Case (Asc(st))
        Case Asc(","), Asc("."), Asc(":"), Asc(";"), Asc("!"), Asc("?")
            IsPrepinanie = True
        Case Else
            IsPrepinanie = False
    End Select
End Function

Функия isUpper возвращает значение True, если символ аргумента st в позиции pos является заглавным символом в латинице или кириллице

' *****************************************
Function isUpper(st As String, pos As Integer) As Boolean
    If Asc(Mid(st, pos, 1)) >= Asc("A") And Asc(Mid(st, pos, 1)) <= Asc("Z") Or _
        Asc(Mid(st, pos, 1)) >= Asc("A") And Asc(Mid(st, pos, 1)) <= Asc("?") Then
        isUpper = True
    Else
        isUpper = False
    End If
End Function