How to record and insert macros into Microsoft Word 2016, 365 / 2019 documents?


Last update: October 2019

Applicability: Word 365, 2019, 2016; Windows and MAC OS X operating systems.

Here’s a question from our reader, Krish:

I am a teacher and I am using Word 2019 to write important documents. I repeatedly need to change the font and size of my document paragraphs. Is there a way to automate my work, so i can modify my document paragraph with a one click? I am sure this is going to save me a couple of hours per week, which i’ll gladly invest in other tasks.

Thanks for your question. You can use Macros in order to automate your tasks in Microsoft Office applications. Macros can be either recorded or coded using Visual Basic for Applications (VBA). Word ships a Macro recorder that allows you to develop automation scripts without coding. If you are just starting out with automation, this might be a good enough solution. That said, with a little bit of VBA  knowledge, you can write efficient and powerful Macros.

Enabling the developer tab in Word

If you don’t see the Developer tab in your Microsoft Word Ribbon,  you’ll need to setup your Macro development environment.

  • Open a new Word document. In case that you would like to work on an existing file, ensure that you have a copy for backup, before making any changes.
  • Now,go ahead and make the developer menu visible in the Ribbon.

Recording your Word Macro – a practical example

  • Now, hit the newly added Developer tab.
  • Go to the Code button group.

2018-01-13 23_27_51-Document1 - Word



  • Hit the Record Macro button to invoke the Macro recorder function.

2018-01-13 23_28_49-

 

  • Define a meaningful name for your Macro. Note:As the name you provide will be used in the auto created VBA code, Ensure no spaces in the Macro name.

Create_word_VBA

  •  Note: Although it’s possible to assign Macros to buttons , for simplicity we’ll run Macro manually via the View tab or Developer tabs.
  • Execute the sequence of steps you would like to record. In this case, you’ll record the following steps:
    • Select a specific paragraph in your document.
    • Go to the Home tab.
    • Set the font to Times New Roman.
    • Set the Font Size to 16.
    • Center your Text by hitting Ctrl +E.
  • Once Done, return to the Developer tab and hit Stop Recording.
  • Now let us take a look at the auto-generated VBA code. Hit Macros and then highlight the AutoFormat Macro and hit Edit.

VBA_Code_Macro

  • Hit File, then Save As.
  • In the Save As dialog right hand side, determine your saving location and provide a meaningful name to your Workbook.

Save_docm

  • Choose Word Macro Enabled Document as your document type. Note: Your Word document will be saved with the .docm suffix.
  • Hit the Save Button.

Executing your macro

  • Open your Word document.
  • Select the Paragraph you would like to automatically format. Just as an example, here’s the paragraph i chose:

Before_macro

  • Go to the View tab.
  • Hit the Macros button.
  • Select your AutoFormat Macro
  • Hit Run – this will apply the macro on the selected paragraph.
  • Voi’la , nice result!After

Assigning your Macro to Buttons or keyboard shortcuts

Note: This is an optional step that should be attempted after you have followed the Macro recording tutorial above.

OK, so far we got our Macro basics working. Now it’s time to improve a bit our Macro usability in the Word doc. Let me show you how you can associate your Macro with a quick access button, so you can launch it more easily.

  • Right click on the Ribbon and select Customize the Quick Access Toolbar.
  • The Word Options dialog will come up.
  • In the Choose commands from dropdown, select Macros.
  • Highlight your Macro and hit the Add>> Button to add a shortcut to your Macro to the Quick Access Toolbar.

Word_Options_Dialog

  • Hit the Modify… button to define a suitable icon for your Macro.
  • Define a Display name for your button.
  • Hit OK.
  • Now, you can launch your Macro from the Quick Access Toolbar, just above the Ribbon.

Quick_access_toolbar

Note: You are able to associate your Word Macro not only with quick access buttons but also with command buttons embedded in your document and specific custom keyboard shortcuts.

Creating Word Macros using VBA

With some simple Visual Basic for Applications coding skills we can edit the macros and write programs to automate various kinds of works using VBA.

Aside Note: FYI – some of the Microsoft Office applications, such as Powerpoint and Outlook, do not have built in macro recorders. Therefore, writing VBA is mandatory for writing Powerpoint macros and automating Outlook.

  • To edit a macro, click on the Developer tab and select Macros in the code option.
  • Click on the macro and select Edit.
  • The Visual Basic for applications editor will open up.
  • Let’s assume that we want to manually edit the Macro we have recorded in the previous step, so that Word not only set the Size, font and alignment of the paragraph, but also the color.
  • Setting the color of a section is achieved using the following VBA command:
 Selection.Font.Color 
  • In our case, we’ll want to set it to a random blue, so we’ll append the following snippet to our Recorded macro:
 Selection.Font.Color = 16737792
  • Here’s how your VBA code should look like:

VBA_after

  • In the VBA Editor hit File and then Save.
  • Back to your document, run your Macro on a paragraph and observe the font color change.

Word_Macro_paragraph

  • Voi’la!

This concludes our tutorial for today, obviously, there is a lot to be done with the Word macro recorder and VBA. In case you are looking for more specific help that goes beyond the scope of this tutorial, kindly contact us via our contact form.

 

Leave a Comment: