Code Sample 2: Change the business card image on all contacts in a folder
This variation of the code changes all of the business card images in the default contacts folder. You can use an If... then statement (sample below) to restrict the changes to a contacts matching a specific condition.
As with the earlier code, although we limit this sample code to changing the business card image, you can use change any contact field by editing the field name.
Public Sub ChangeBusinessCardImage()
Dim obj As Object
Dim oFolder As Outlook.MAPIFolder
Dim oContact As Outlook.ContactItem
Dim colItems As Outlook.Items
Dim i As Long
Dim lCount As Long
Set oFolder = Application.Session.GetDefaultFolder(olFolderContacts)
Set colItems = oFolder.Items
lCount = colItems.Count
For i = 1 To lCount
Set obj = colItems.Item(i)
If (obj.Class = olContact) Then
Set oContact = obj
oContact.AddBusinessCardLogoPicture ("c:\image\logo.png")
oContact.Save
End If
Next
End Sub
Change Contacts based on property values
By adding a simple If... Then statement around the code the changes the picture, you can run it on all contacts in the folder but apply it only to certain contacts, unlike Code Sample 1, which works on selected contacts.
See Change the image on a Business Card based on the Category for VBA code that changes the business card image based on the category a contact is assigned to.
If oContact.Sensitivity = olPrivate Then
oContact.AddBusinessCardLogoPicture ("c:\image\logo.png")
oContact.Save
End If
To add a company logo to all contacts from a specific company, the code will look like this:
If oContact.CompanyName = "CDOLive" Then
oContact.AddBusinessCardLogoPicture ("C:\image\logo.gif")
oContact.Save
End If
Note that this code is case sensitive. Before using it, you should use a group by Company view and verify you are using only variation of a company name. If more than one exist, drag the contacts to one group.
Code Sample 3: Change the business card layout to match the selected contact
More Information
Change the Business Card layout using BusinessCardLayoutXml
Change the image on a Business Card based on the Category
Changing Outlook’s Business Card layout
Using Custom Business Cards
Pages: 1 2

