Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

Приложимост: Word 365, 2019, 2016; Операционни системи Windows и MAC OS X.

Ето един въпрос от читател:

Аз съм учител, обикновено използвам Word 2019, за да пиша документите си. Често се налага да променя шрифта и размера на параграфите на документа си. Има ли начин да автоматизирам работата си с макроси, така че да мога да променя параграфа на документа си с едно щракване? Сигурен съм, че това ще ми спести няколко часа седмично, които с удоволствие ще инвестирам в други задачи.

Благодаря за въпроса ви. Основното предимство на макросите е, че ви позволяват да автоматизирате задачите си в приложенията на Microsoft Office. Макросите могат да бъдат записани или ръчно кодирани с помощта на Visual Basic за приложения (VBA). Word доставя макрорекордер, който ви позволява да разработвате скриптове за автоматизация без кодиране. Ако тепърва започвате с автоматизацията, това може да е достатъчно добро решение. Въпреки това, с малко познания за VBA, можете да пишете ефективни и мощни макроси.

Активиране на раздела за програмисти в Word

Ако не виждате раздела Разработчик във вашата лента на Microsoft Word, ще трябва да настроите вашата среда за разработка на макроси.

  • Отворете нов документ на Word. В случай, че искате да работите върху съществуващ файл, уверете се, че имате копие за архивиране, преди да направите каквито и да било промени.
  • Сега продължете и направете менюто за програмисти видимо в лентата .

Записване на Word Macro – практически пример

  • Сега натиснете новодобавения раздел за програмисти .
  • Отидете в групата бутони Код .

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

  • Натиснете бутона Record Macro , за да извикате функцията за запис на макроси.

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

  • Определете смислено име за вашия макрос. Забележка: Тъй като името, което предоставяте, ще се използва в автоматично създадения VBA код, уверете се, че няма интервали в името на макроса.

  •  Забележка: Въпреки че е възможно да зададете макроси на бутони , за простота ще стартираме макроси ръчно чрез раздела Изглед или разделите за разработчици.
  • Изпълнете последователността от стъпки, които искате да запишете. В този случай ще запишете следните стъпки:
    • Изберете конкретен параграф във вашия документ.
    • Отидете в раздела Начало .
    • Задайте шрифта на Times New Roman.
    • Задайте размера на шрифта на 16.
    • Центрирайте вашия текст, като натиснете Ctrl +E.
  • След като сте готови, върнете се в раздела Разработчик и натиснете Спиране на записа .
  • Сега нека да разгледаме автоматично генерирания VBA код. Натиснете Макроси и след това маркирайте макроса за автоматично форматиране и натиснете Редактиране .

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

  • Затворете VBA редактора.

Запазете работата си в шаблон с активиран Word Macro

  • Щракнете върху Файл , след това Запиши като .
  • В диалоговия прозорец Запиши като от дясната страна определете местоположението си за запис и дайте смислено име на вашата работна книга.

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

  • Изберете документ с активиран макрос на Word като тип документ. Забележка: Вашият Word документ ще бъде записан с наставката .docm.
  • Натиснете бутона Запазване .

Изпълнение на вашия макрос

  • Отворете вашия Word документ.
  • Изберете абзаца, който искате да форматирате автоматично. Само като пример, ето параграфа, който избрах:

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

  • Отидете в раздела Изглед .
  • Натиснете бутона Макроси .
  • Изберете вашия макрос за автоматично форматиране
  • Натиснете Run – това ще приложи макроса към избрания параграф.
  • Voi'la, добър резултат!

    Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

Присвояване на вашия макрос на бутони или клавишни комбинации

Забележка: Това е незадължителна стъпка, която трябва да се опита, след като сте следвали урока за запис на макроси по-горе.

Добре, досега работихме с основните ни макроси. Сега е време да подобрим малко използваемостта на нашия макрос в документа на Word. Позволете ми да ви покажа как можете да свържете своя макрос с бутон за бърз достъп, за да можете да го стартирате по-лесно.

  • Щракнете с десния бутон върху лентата и изберете Персонализиране на лентата с инструменти за бърз достъп.
  • Ще се появи диалоговият прозорец Опции на Word .
  • В падащото меню Избор на команди от изберете Макроси.
  • Маркирайте своя макрос и натиснете бутона Добавяне>> , за да добавите пряк път към вашия макрос към лентата с инструменти за бърз достъп .

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

  • Натиснете бутона Промяна... , за да дефинирате подходяща икона за вашия макрос.
  • Определете екранно име за вашия бутон.
  • Натиснете OK .
  • Сега можете да стартирате своя макрос от лентата с инструменти за бърз достъп, точно над лентата.

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

Забележка: Можете да свържете вашия Word Macro не само с бутони за бърз достъп, но и с командни бутони, вградени във вашия документ, и специфични персонализирани клавишни комбинации.

Създаване на Word макроси с помощта на VBA

С някои прости умения за кодиране на Visual Basic за приложения можем да редактираме макросите и да пишем програми за автоматизиране на различни видове работи с помощта на VBA.

Забележка настрана: FYI – някои от приложенията на Microsoft Office, като Powerpoint и Outlook, нямат вградени макрорекордери. Следователно писането на VBA е задължително за писане на макроси на Powerpoint и автоматизиране на Outlook.

  • За да редактирате макрос, щракнете върху  раздела Разработчик  и изберете Макроси в опцията за код.
  • Щракнете върху макроса и изберете  Редактиране .
  • Ще се отвори редакторът на Visual Basic за приложения.
  • Да приемем, че искаме ръчно да редактираме макроса, който сме записали в предишната стъпка, така че Word не само да зададе размера, шрифта и подравняването на абзаца, но и цвета.
  • Задаването на цвета на секция се постига с помощта на следната VBA команда:

[код] Избор.Шрифт.Цвят [/code]

  • В нашия случай ще искаме да го зададем на произволно синьо, така че ще добавим следния фрагмент към нашия Записан макрос:

[код] Selection.Font.Color = 16737792[/code]

  • Ето как трябва да изглежда вашият VBA код:

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

  • Във VBA Editor натиснете File и след това Save .
  • Върнете се към документа си, стартирайте своя макрос върху параграф и наблюдавайте промяната на цвета на шрифта.

Word Macros отвъд Macro Recorder: Office 2016, 365 / 2019 Macros урок и полезни примери

  • Voi'la!

Полезен пример за Word Macro, който можете да напишете

След публикуването на този урок много читатели поискаха по-задълбочени примери за Word макроси. Този списък обхваща най-разпространените задачи, които можете да автоматизирате с помощта на Visual Basic в Word. Ето ни:

Създаване и запазване на нов документ

Sub CreateNewDoc()
'This small snippet first creates a new document, then it checks whether a document with the same name already exists before saving.
Dim myDoc As New Document
Dim filePath As String

'Modify your file path as needed
filePath = "C:\MyNewDoc.docx"

Set myDoc = Documents.Add
With myDoc
If Dir(filePath) = "" Then
.SaveAs2 (filePath)
Else

'You have already an existing document

MsgBox ("Please use a different file name")
End If
End With

myDoc.Close SaveChanges:=wdPromptToSaveChanges

End Sub

Забележка: Когато създавате нови документи, можете да посочите шаблона (.dotm/.dotx файлове), който искате да използвате. Шаблоните обикновено се съхраняват на адрес: C:\Users\\AppData\Roaming\Microsoft\Templates

Documents.Add Template:=<your_template_folder>

Отворете документ на Word с VBA

Sub OpenDoc()
'This code checks whether your document exists and then opens it
filePath = "C:\MyNewDoc.docx"

If Dir(filePath) = "" Then
MsgBox ("file doesn't exist")
Else
Documents.Open (filePath)
End If

End Sub

Затваряне на един/всички отворени документи

Sub CloseDoc()

'This code closes a specific document
filePath = "C:\MyNewDoc.docx"
Documents(filePath).Close SaveChanges:=wdPromptToSaveChanges
End Sub
Sub CloseAllDocs()
'This code closes all opened documents in your computer
Documents.Close SaveChanges:=wdPromptToSaveChanges

End Sub

Запазване на Word като PDF

Ето как лесно да автоматизирате записването на документи на Word като PDF файлове.

Sub SaveAsPdf()
'This code saves a word document in a PDF format
FileName = Left(CStr(ActiveDocument.Name), Len(CStr(ActiveDocument.Name)) - 5)
ActiveDocument.SaveAs2 FileName:="c:\" + FileName + ".pdf", FileFormat:=wdFormatPDF

End Sub

Вмъкване на горен и долен колонтитул

Този код задава горния и долния колонтитул на първата страница на вашия документ на Word.

Sub InsertHeaderFooterFirstPage()
Dim myDoc As Document
Dim headerText As String
Dim footerText As String

Set myDoc = ActiveDocument
'Replace the header and footer text as needed
headerText = "This document was written by you"
footerText = "All rights reserved to you"

With myDoc.Sections(1)
'We first ensure that we can set different header and footer texts
.PageSetup.DifferentFirstPageHeaderFooter = True
'Setting the header and footer texts
.Headers(wdHeaderFooterFirstPage).Range.Text = headerText
.Footers(wdHeaderFooterFirstPage).Range.Text = footerText

End With

End Sub

Допълнителни идеи за Word Macro

Ето още няколко идеи, които ще публикуваме в бъдеще.

  1. Намерете и заменете (метод на изпълнение)
  2. Вмъкване на абзац (преди и след избор)
  3. Печат на документи програмно
  4. Работа с таблици

Това завършва нашия урок за днес. Както току-що видяхте, има много какво да се направи с записа на макроси на Word и макроси VBA в Word. В случай, че търсите по-конкретна помощ, която излиза извън обхвата на този урок, моля свържете се с нас чрез нашата форма за контакт .

Оставете коментар

Шаблон за проста матрица за делегиране на задачи за Word: Практическа версия за мениджъри на малки екипи

Шаблон за проста матрица за делегиране на задачи за Word: Практическа версия за мениджъри на малки екипи

Използвайте този прост шаблон за матрица за делегиране на задачи в Word, за да зададете собственици, ограничения за решения, крайни срокове и контролни точки, без да усложнявате прекалено малкия екип.

Шаблон за прост лист за посещаемост на детски градини: Вход и отход за печат за домашни грижи за деца

Шаблон за прост лист за посещаемост на детски градини: Вход и отход за печат за домашни грижи за деца

Използвайте този лесен за печат лист за посещаемост на детски градини за домашни грижи, с имена на децата, часове на пристигане/заминаване, подписи и съвети за съответствие.

Шаблон за маркетингова стратегия на една страница за печат за местни фирми

Шаблон за маркетингова стратегия на една страница за печат за местни фирми

Използвайте този шаблон за маркетингова стратегия от една страница, който може да се отпечата, за да дефинирате вашата местна аудитория, оферта, канали, бюджет, седмични действия и измерими цели.

Как да спрете Excel да променя автоматично числата в дати

Как да спрете Excel да променя автоматично числата в дати

Спрете Excel да конвертира стойности като 1/2, 11-53 или JAN1 в дати. Научете надеждни решения за въвеждане, поставяне, импортиране на CSV файлове и вече конвертирани клетки.

Шаблон за презентация на PowerPoint за модерна обява за недвижими имоти (безплатен): Какво да включите

Шаблон за презентация на PowerPoint за модерна обява за недвижими имоти (безплатен): Какво да включите

Създайте изискан PowerPoint за обява за недвижими имоти безплатно с практичен план на слайдовете, снимка, брандиране, достъпност, съответствие и съвети за експорт.

Как да поправите грешката „Outlook не може да изпраща имейли, но може да получава“

Как да поправите грешката „Outlook не може да изпраща имейли, но може да получава“

Поправете Outlook, когато получавате имейли, но не можете да изпращате. Проверете Изпращача, офлайн режима, влизането, SMTP настройките, профили и промените в Microsoft 365.

Опростен шаблон на Excel за двуседмично проследяване на заплатите за малки екипи: Практическо ръководство за настройка

Опростен шаблон на Excel за двуседмично проследяване на заплатите за малки екипи: Практическо ръководство за настройка

Създайте прост двуседмичен трекер на заплатите в Excel за малък екип, включващ работно време, възнаграждения, удръжки, маркери за преглед, обобщения и насоки за водене на записи.

Printable Event Planning Checklist & Budget Template for Word: What to Include and When to Use Excel Instead

Printable Event Planning Checklist & Budget Template for Word: What to Include and When to Use Excel Instead

Build or customize a printable event planning checklist and budget template in Microsoft Word, with practical sections, tradeoffs, and tips for Word vs. Excel.

Проста презентация за обучение при въвеждане в длъжност за нови служители: Практически шаблон от 12 слайда

Проста презентация за обучение при въвеждане в длъжност за нови служители: Практически шаблон от 12 слайда

Създайте проста презентация за въвеждане в длъжност с практична структура от 12 слайда, обхващаща очакванията за ролята, инструменти, сигурност, политики, безопасност и действия за първата седмица.

Как да експортирате контакти от Salesforce в чист Excel формат, без да разваляте ID-тата или телефонните номера

Как да експортирате контакти от Salesforce в чист Excel формат, без да разваляте ID-тата или телефонните номера

Експортирайте контакти от Salesforce в Excel чисто: създайте правилния отчет, експортирайте само детайли в CSV, импортирайте с Power Query, запазете ID-тата и водещите нули, премахнете дублираните записи безопасно и проверете резултата.