Список сокращений в MS Word (макрос)

Оригинальное решение представлено по ссылке.

Позволяет собрать перечень сокращений в конце документа.

По факту собирает любые слова капсом на русском и английском в алфавитном порядке. Стоит иметь ввиду, что если сокращение из двух или нескольких частей, то макрос включит их в перечень по отдельности.

Предварительные настройки

В MS Word должна быт включена функция "Разработчика. Для этого:

  1. нажать на панели инструментов "Файл" ( рисунок 1 );

рисунок 1

  1. выбрать в меню "Параметры" ( рисунок 2 );

рисунок 2

  1. Выбрать раздел "Настроить ленту" и установить чек-бокс "Разработчик" ( рисунок 3 );

рисунок 3

  1. Перейти во вкладку "Разработчик" ( рисунок 4 ).

рисунок 4

Во избежание конфликтов, рекомендуется так же

настроить согласно инструкции доверенный доступ к объектной модели проектов VBA .

Для этого во вкладке разработчик выбрать пункт "Безопасность макросов" и установить чек-бокс "Доверять доступ к объектной модели проектов VBA" ( рисунок 5 ).

Нажать "ОК" и вернуться в основное окно. 

Рисунок 5

Создание макроса

Для создания макроса выполнить следующее:

  1. во вкладке "Разработчик" нажать кнопку "Макросы" ( рисунок 4 );
  2. в открывшемся окне ввести имя макроса и нажать Создать ( рисунок 6 );

Рисунок 6

  1. В открывшемся окне редактора VBA вставить код в тело макроса ( рисунок 7 ) , приведенный ниже;

Рисунок 7

  1. Вставить следующий код, убедившись, что установлена русская раскладка.
Текст макроса

Dim r As Range, x, cl As New Collection, s$
Set r = ActiveDocument.Range
On Error Resume Next
With r.Find
.Text = "<[А-ЯЁ;A-Z]{2;5}>"
.Forward = True
.Wrap = wdFindStop
.Format = False
.MatchWildcards = True
While .Execute
 s = r.Text
For x = 1 To cl.Count
If s < cl(x) Then cl.Add s, s, Before:=x: GoTo 1
Next
cl.Add s, s
1   Wend
End With
With ActiveDocument.Range
.InsertParagraphAfter
For Each x In cl
.InsertAfter vbCr & x
Next
End With

Одинарной кавычкой в VBA создается комментарий в коде. Поэтому, вставляя код маакроса следует убедится, что лишние кавычки удалены