Как начать использовать макросы в Word

Как начать использовать макросы в Word

Устали выполнять повторяющиеся задачи в Microsoft Word? В программе похоронен мощный инструмент автоматизации, который может избавить вас от этой работы. Мы говорим о макросах, и хотя эта функция основана на Microsoft Visual Basic для приложений (VBA), вы можете использовать ее, даже если идея кодирования вас не устраивает.





При нажатии кнопки Word записывает ваши действия, создавая макрос, который вы можете воспроизводить так часто, как захотите. Если вы любите приключения, вы можете легко изменить макрос для дополнительной степени автоматизации.





Здесь мы покажем вам один простой, но полезный пример: как автоматизировать функцию поиска и замены Word.





Запись макроса

В этом примере вы уважаемый президент Общества по сохранению старинной стоматологической техники. У вас есть десятки документов Word об исторических зубных протезах и т. Д., И все они содержат заметное упоминание имени общества. Затем внезапно правление голосует за изменение названия на Лигу сохранения стоматологического антиквариата. Теперь вам нужен простой способ обновить документы.

Вы можете начать с нового пустого документа или открыть существующий. Если вы еще этого не сделали, вам нужно включить вкладку «Разработчик».



Перейти к Файл> Параметры> Настроить ленту . Справа под Основные вкладки , проверить Разработчик вариант. Выберите ОК и выйдите.

как улучшить работу игр на ноутбуке

Теперь давайте создадим наш макрос.





  1. Нажмите Разработчик> Запись макроса .
  2. Вам будет предложено назвать макрос. Введите ChangeSocietyName или любое другое имя, которое вам подходит. При именовании макросов избегайте пробелов, точек, восклицательных знаков и специальных символов, иначе вы получите сообщение об ошибке. Вы можете использовать числа, но первым символом должна быть буква.
  3. Вы можете назначить макрос кнопке и / или сочетанию клавиш, но это не является обязательным требованием. Если вы выберете кнопку, Word позволит вам добавить ее на панель быстрого доступа. Вы также можете добавить краткое описание макроса.
  4. Нажмите Ok , и Word теперь будет записывать ваши действия. Ударять Ctrl + H поднять Найти и заменить диалог.
  5. Присоединяйтесь к Обществу сохранения антикварной стоматологической техники в поиске и Лиге сохранения антиквариата в замене.
  6. Нажмите Заменить все для выполнения операции поиска и замены. Это единственное действие, которое вы хотите записать. Не имеет значения, заменяет ли макрос какой-либо текст. Дело в том, чтобы сохранить его для других документов.
  7. Это важно: нажмите Разработчик> Остановить запись . В противном случае макрос будет включать все последующие действия.

А теперь давайте посмотрим на вашу работу. Откройте документ, содержащий название общества. Нажмите Разработчик> Макросы . Если дважды щелкнуть ChangeSocietyName, Word автоматически выполнит операцию «Найти и заменить».

Кончик: Во время записи макроса вам может потребоваться выполнить действие, которое вы не хотите записывать. Например, вы можете захотеть скопировать и вставить текст в диалоговое окно «Найти и заменить», а не вводить его вручную. Нет проблем: просто нажмите Разработчик> Приостановить запись , скопируйте и вставьте текст, затем щелкните Разработчик> Регистратор резюме . Затем вы можете завершить запись макроса, как описано выше.





Хотя мы сосредоточились здесь на Microsoft Word, вы также можете используйте макросы для повышения производительности в Excel . И есть много макросов для экономии времени для Microsoft OneNote.

Погружение в код

Теперь мы более подробно рассмотрим наш новый макрос Word. Перейти к Разработчик> Макросы , но вместо двойного щелчка по макросу выберите его и нажмите Редактировать . Откроется редактор Visual Basic, автономная среда для создания приложений VBA.

Это может показаться устрашающим, но вы можете игнорировать меню и большинство панелей. Вместо этого сосредоточьтесь на окне, содержащем код. Как видите, Word только что написал макрос, который выполняет поиск и замену.


Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = 'Society for the Preservation of Antique Dental Appliances'
.Replacement.Text = 'Dental Antiques Preservation League'
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

Давайте объясним, что здесь происходит.

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

как сделать резервную копию закладок Google Chrome

Затем мы переходим к сути кода: коду, который выполняет Найти и заменить операция. Как видите, он определяет значения для каждого параметра в диалоговом окне «Найти и заменить», включая текст и текст замены в кавычках. В Selection.Find.Execute Команда в конце эквивалентна нажатию кнопки 'Заменить все'.

Модификация макроса

Чтобы использовать макросы, вам не нужно возиться с кодом или даже смотреть на него. Но вы можете получить больше от этой функции, если захотите погрузиться в подробности. Например, предположим, что вы допустили опечатку при записи макроса. Вместо того, чтобы перезаписывать это, вы можете зайти в Visual Basic и исправить.

Вы также можете настроить макрос, чтобы сделать его более полезным, и мы этим и займемся здесь. Когда вы запускаете «Найти и заменить» вручную или с помощью макроса, Word запоминает найденный и заменяющий текст. В следующий раз, когда вы откроете диалоговое окно «Найти и заменить», оно будет выглядеть так.

Было бы лучше очистить значения, чтобы мы получили чистое диалоговое окно. Мы сделаем это с помощью второго макроса, но на этот раз мы сделаем это непосредственно в Visual Basic.

  1. В редакторе Visual Basic выберите всю подпрограмму от первой строки до End Sub. Ударять Ctrl + C скопировать это.
  2. Поместите курсор под End Sub и нажмите Ctrl + V . Вы только что продублировали подпрограмму.
  3. Измените имя с ChangeSocietyName на ClearFindReplace (или любое другое имя, которое вам подходит). Это важно, потому что VBA выдаст сообщение об ошибке, если вы попытаетесь запустить макросы с повторяющимися именами.
  4. в .Текст а также Replacement.Text значения, удалите текст, но оставьте кавычки. По сути, вы говорите Word ничего не найти и ничего не заменить, но вы также очищаете эти значения.

Результат должен выглядеть так:


Sub ClearFindReplace()
'
' ClearFindReplace Macro
' Clear Text from Find and Replace dialog
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = ''
.Replacement.Text = ''
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
End Sub

Теперь вернемся к макросу ChangeSocietyName. Под кодом поиска и замены, но перед End Sub введите ClearFindReplace (без скобок в конце).

Правильно: вам не нужно вводить весь код, который вы только что создали, только имя макроса.


Sub ChangeSocietyName()
'
' ChangeSocietyName Macro
' Rename Society for the Preservation of Antique Dental Appliances
'
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
.Text = 'Society for the Preservation of Antique Dental Appliances'
.Replacement.Text = 'Dental Antiques Preservation League'
.Forward = True
.Wrap = wdFindContinue
.Format = False
.MatchCase = False
.MatchWholeWord = False
.MatchWildcards = False
.MatchSoundsLike = False
.MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll
ClearFindReplace
End Sub

Когда Word запускает ChangeSocietyName, сначала выполняется исходная функция «Найти и заменить». Затем он интерпретирует ClearFindReplace как команду для запуска второго макроса.

Идем дальше с VBA

Как видите, функция записи макросов Word может помочь вам сэкономить время множеством способов. Вы можете создавать макросы для автоматизации практически любой операции, а в редакторе Visual Basic вы можете настраивать макросы, вставлять один макрос в другой или создавать подпрограмму, которая выполняет несколько макросов один за другим.

Поскольку VBA является полноценным языком программирования, вы можете включать подпрограммы в более крупные приложения с переменными, циклами, условными операторами и т. Д. И как только вы изучите основы VBA в Word, вы сможете применить многие из этих знаний для создания макросов в Microsoft Excel и Access.

Windows 10 100% использование процессора

Чтобы пойти дальше, вы захотите узнать больше о соглашениях VBA и редакторе Visual Basic, например о том, как организовать свой код и как бороться с ошибками. Но даже если вы хотите придерживаться простых функций, подобных описанным здесь, вы можете значительно улучшить свою продуктивность.

Делиться Делиться Твитнуть Эл. адрес Учебник для начинающих по написанию макросов VBA в Excel (и почему вы должны учиться)

Если вы регулярно используете Excel, стоит научиться создавать макросы VBA и получить доступ ко многим другим функциям и возможностям.

Читать далее
Похожие темы
  • Продуктивность
  • Microsoft Word
  • Microsoft Office 365
  • Microsoft Office 2016
  • Советы по Microsoft Office
  • Microsoft Office 2019
  • Макросы
Об авторе Стивен Бил(Опубликовано 6 статей)

Стивен Бил - давний технический писатель из Сан-Франциско. Он является автором множества книг о компьютерных приложениях в издательском деле и графическом дизайне, в прошлом - редактор новостей и обзоров Macworld. В настоящее время он руководит популярным сайтом для энтузиастов стимпанка The Steampunk Explorer.

Ещё от Stephen Beale

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

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Нажмите здесь, чтобы подписаться