Modifier par programmation le format d’affichage de tous les contacts
Dans Outlook, vous pouvez spécifier le paramètre par défaut pour le fichier des nouveaux contacts via les options de Contacts, ainsi que lorsque vous créez le nouveau contact. Par exemple, le paramètres par défaut est Nom, Prénom, qui classe un contact sur son nom, suivi de son prénom. Toutefois, changer ce paramètre ne s'applique qu'aux nouveaux contacts que vous créez. Pour les contacts qui existent déjà, si vous souhaitez modifier la façon dont leurs noms sont classés par, par exemple, en passant de la valeur par défaut Last, Firstà First, Last, vous devez soit le faire individuellement pour chaque contact existant dans l’inspecteur, soit écrire une macro pour modifier le paramètre de tous les contacts existants dans le dossier Contacts.
Cette rubrique présente un exemple de code qui passe en revue tous les éléments Contact dans le dossier Contacts par défaut et utilise la propriété FileAs de chaque élément Contact pour spécifier la chaîne par laquelle le contact doit être enregistré . Dans cet exemple particulier, la chaîne est remplacée par prénom suivi d’un vide, puis du nom de famille. L’exemple de code enregistre ensuite les modifications apportées à l’élément de contact.
Note En règle générale, un dossier dans Outlook peut contenir des éléments hétérogènes, et le dossier Contact peut contenir des objets ContactItem ainsi que d’autres éléments. L’exemple de code veille à ce qu’il ne change que le format de classement des éléments de contact en filtrant sur l’IPM.Contact de classe du message. Pour plus d’informations sur les types d’éléments et les classes de messages, voir Types d’éléments et classes de messages.
Private Sub ReFileContacts()
Dim items As items, item As ContactItem, folder As folder
Dim contactItems As Outlook.items
Dim itemContact As Outlook.ContactItem
Set folder = Session.GetDefaultFolder(olFolderContacts)
Set items = folder.items
Count = items.Count
If Count = 0 Then
MsgBox "Nothing to do!"
Exit Sub
End If
'Filter on the message class to obtain only contact items in the folder
Set contactItems = items.Restrict("[MessageClass]='IPM.Contact'")
For Each itemContact In contactItems
itemContact.FileAs = itemContact.FirstName + " " + itemContact.LastName
itemContact.Save
Next
MsgBox "Your contacts have been re-filed."
End Sub
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.