Send email to all addresses for one Contact

Last reviewed on December 30, 2013   —  5 comments

This question comes from a user migrating from Eudora but is useful to anyone who needs to send an email message to a contact's three email addresses.

Some of our contacts have more than one email address, and in Eudora we can save one contact with two addresses, then when we select that one contact from the address book, both addresses are included in the To field. How can we do this in Outlook?

The Outlook version of this feature is available only when you view the contact in the Contacts folder.

In Outlook 2010 and 2013, find the contact in the Contacts folder, select it and click the Email button on the ribbon. This will open a new message addressed to all of the addresses entered in the contact.

Send email to all addresses

If you prefer to right click on the contact, choose Create, New message to contact. In older versions, you'll use the Actions, New message to contact command.

Create a new message to all addresses

Unfortunately, this only works when you select one contact. If you select two or more, only the default email address is added to the message.

If you use the To button to open the address book, you'll need to select each address from the address list.

Select all addresses in the address book

Send email to all addresses macro

This VBA macro will get all email addresses on the selected contacts and prepare an email message with the addresses in the BCC field.

See How to use Outlook's VBA Editor if you don't know how to use macros.


Public Sub SendToAllAddresses()
Dim Selection As Selection
Dim strDynamicDL As String
Dim obj As Object
Dim objOutlookRecip As Outlook.Recipient


Set Selection = ActiveExplorer.Selection

For Each obj In Selection
 
 If obj.Class = olContact Then
     strDynamicDL = strDynamicDL & ";" & obj.Email1Address & ";" & _
     obj.Email2Address & ";" & obj.Email3Address
     Else
     strDynamicDL = strDynamicDL & ";" & obj.DLName
 End If
     
Next


Dim objMsg As MailItem
Set objMsg = Application.CreateItem(olMailItem)

  objMsg.To = "myself@here.com"
  objMsg.BCC = strDynamicDL
  
For Each objOutlookRecip In objMsg.Recipients
    objOutlookRecip.Resolve
Next

  objMsg.Display

Set objMsg = Nothing
Set obj = Nothing
End Sub



Written by

Diane Poremsky
A Microsoft Outlook Most Valuable Professional (MVP) since 1999, Diane is the author of several books, including Outlook 2013 Absolute Beginners Book. She also created video training CDs and online training classes for Microsoft Outlook. You can find her helping people online in Outlook Forums as well as in the Microsoft Answers and TechNet forums.

Please post long or more complicated questions at Outlookforums.

5 responses to “Send email to all addresses for one Contact”

  1. Lee Conwell

    Am I correct in thinking the only way to send to all email addresses for a contact is to either select them each time using the address book from the "to" field or create a Contact Group (a new name for Distribution List) which has to be updated each time there is a change in the contact?

  2. Lyn

    Just reading this now and i'm guessing if you have multiple emails for one contact, when you add that contact to a distribution group it will only choose the primary or "default" email address. How can you get the distribution group to send to all the email addresses in each contact??

Leave a Reply

If the Post Coment button disappears, press your Tab key.