Tip: Other languages are Google-Translated. You can visit the English version of this link.
Log in


How to insert all recipient names to email body in Outlook?

Sometimes, you may need to insert the names of all recipients into the message body when composing an email in Outlook. Of course, you can copy and paste the names into the body one by one. But, it is very tedious if there are dozens of recipient names need to be pasted. This article, I will talk about an easy way to solve this job in Outlook.

Insert all recipient names to email body with VBA code in Outlook

Insert all recipient names to email body with VBA code in Outlook

The following VBA code can help you to insert all recipient names from To field into the message body, please do as this:

1. Launch the Outlook, and then hold down the ALT + F11 keys to open the Microsoft Visual Basic for Applications window.

2. Click Insert > Module, and paste the following code in the Module Window.

VBA code: Insert recipient names into message body:

Sub InsertRecipientNamesToBody()
Dim xMailItem As Outlook.MailItem
Dim xRecipient As Outlook.Recipient
Dim xRecipAddress, xRecipNames, xRecipName, xFilterAddr As String
Dim xItems As Outlook.Items
Dim i As Integer
Dim xFoundContact As Outlook.ContactItem
Dim xDoc As Word.Document
On Error Resume Next
Set xMailItem = Outlook.ActiveInspector.CurrentItem
For Each xRecipient In xMailItem.Recipients
    xRecipAddress = xRecipient.Address
    Set xItems = Application.Session.GetDefaultFolder(olFolderContacts).Items
    For i = 1 To 3
        xFilterAddr = "[Email" & i & "Address] = " & xRecipAddress
        Set xFoundContact = xItems.Find(xFilterAddr)
        If Not (xFoundContact Is Nothing) Then
           xRecipNames = xRecipNames & xFoundContact.FullName & Chr(10)
           Exit For
        End If
    If (xFoundContact Is Nothing) Then
       xRecipName = Split(xRecipAddress, "@")(0)
       xRecipNames = xRecipNames & xRecipName & Chr(10)
    End If
Set xDoc = xMailItem.GetInspector.WordEditor
xDoc.Content.InsertAfter xRecipNames
Set xMailItem = Nothing
Set xRecipient = Nothing
Set xItems = Nothing
Set xFoundContact = Nothing
End Sub

3. And then still in the Microsoft Visual Basic for Applications window, click Tools > References to go to the References-Project1 dialog box, and check Microsoft Word Object Library option from the Available References list box, see screenshot:

4. Then click OK to close the dialog, now, you should add this code to the Quick Access Toolbar.

5. Create a new message by clicking New Email, in the Message window, click Customize Quick Access Toolbar icon, and select More Commands, see screenshot:

6. In the Outlook Options dialog box:

(1.) Select Macros from the Choose commands from drop down list;

(2.) And then choose the VBA code name which you have inserted just now;

(3.) Click Add button to add the code into the Customize Quick Access Toolbar list box.

7. And then a macro icon is displayed into the Quick Access Toolbar as following screenshot shown:

8. Now, when you click the macro icon, the recipient names from the To field will be inserted into the message body as following screenshot shown:


Recommended Productivity Tools

shot kutools outlook kutools tab 1180x121
shot kutools outlook kutools plus tab 1180x121

Kutools for Outlook - More than 100 Advanced Functions for Outlook, Improve 70% Efficiency For you

  • Complicated and repeated operations can be done a one-time processing in seconds.
  • Forward multiple emails individually with one-click, and auto forward by rules.
  • Auto CC/BCC every sending email and easy for customizing rules, and auto reply without requiring exchange server.
  • Powerful junk emails filter, remove duplicate emails, reply with attachment, bunch of one-click operations, and so on...
  • 60-day unlimited free trial. 60-day money back guarantee. 2 years free upgrade and support. Buy once, use forever.
Say something here...
symbols left.
You are guest ( Sign Up? )
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.

Be the first to comment.