Nutti ,nice to see you .
First , when you play it with outlook and macro's > the references !! Microsoft Outlook 12.0 Object library ( for outlook 2007 , 14.0 is 2010 )
second , do not change the the header names .
third , i'm test it with this part of your code .
look to the jpeg .( my outlook is Dutch ) but you can see the data .
When you will test it , do it with 4 a 5 customers , if it's wrong >>>> clean up your contacts in outlook ( max . 5 people )
Sub ContList()
Dim appOutlook As Outlook.Application
Dim objNameSpace As Outlook.Namespace
Dim objContactFolder As Outlook.MAPIFolder
Dim objContacts As Outlook.ContactItem
Dim myDistList As Outlook.DistListItem
Set appOutlook = GetObject(, "Outlook.Application")
Set objNameSpace = appOutlook.GetNamespace("MAPI")
Set objContactFolder = objNameSpace.GetDefaultFolder(olFolderContacts)
Set myMailItem = appOutlook.CreateItem(olMailItem)
Set myRecipients = myMailItem.Recipients
Set myDistList = appOutlook.CreateItem(olDistributionListItem)
For i = 3 To Cells.Find("*", SearchOrder:=xlByRows, SearchDirection:=xlPrevious).Row
Set objContacts = objContactFolder.Items.Add(olContactItem)
With objContacts
.CompanyName = Range("B" & i).Value
.LastName = Range("C" & i).Value
.FirstName = Range("D" & i).Value
.BusinessAddress = Range("E" & i).Value
.BusinessAddressCity = Range("F" & i).Value
.BusinessAddressState = Range("G" & i).Value
.BusinessAddressPostalCode = Range("H" & i).Value
.BusinessAddressCountry = Range("I" & i).Value
.JobTitle = Range("J" & i).Value
.BusinessTelephoneNumber = Range("K" & i).Value
.BusinessFaxNumber = Range("L" & i).Value
.Email1Address = Range("M" & i).Value
.Body = Range("N" & i).Value
.Save
End With
'myRecipients.Add (Range("E" & i).Value)
Next
myRecipients.ResolveAll
myDistList.AddMembers myRecipients
'myDistList.Display
End Sub
Bookmarks