How to access contact groups in Excel VBA?
Expanding on the accepted answer to simply use the name, ensure that the Contact Group name is not ambiguous.
For example, if I have two groups called "My List" and "My List 2". When I try to manually send an email and only type "My List" in the 'To' box, Outlook shows a pop-up asking which list to resolve. This works kind of like and autofill suggestion in Excel. If instead I typed "My List 2", Outlook will know exactly which list I want.
Similarly, Outlook gets confused when trying the same things via VBA, and the error message is not very clear: "Outlook does not recognize one or more names".
The simplest workaround I'm aware of is simple to change the name of "My List" to "My List 1" or anything else completely unique, where no other list shares that exact base name.
In order to have the recipient's email addresses or names resolved (so they don't display just plain text), you can do the following.
With OutMail '.TO field should be set to the contact group .BCC = "" .Attachments.Add ActiveWorkbook.FullName .HTMLBody = Replace(OutMail.HTMLBody, strOldPeriod, strNewPeriod) .Subject = Replace(OutMail.Subject, strOldPeriod, strNewPeriod) 'To display the email leave as is; to send the Email, change to .Send .Display 'or Send If Not .Recipients.ResolveAll Then For Each Recipient In .Recipients If Not Recipient.Resolved Then MsgBox Recipient.Name & " could not be resolved" End If Next End IfEnd With