Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Créer une liste de diffusion

2 réponses
Avatar
DoMi
Bonjour,

Je cherchais comment cr=E9er une liste de diffusion dans Outlook d'apr=E8s
des donn=E9es dans une colonne d'Excel.
J'ai trouv=E9 cette r=E9ponse de Daniel.C :

Sub CreerListeDiffusion()
'Cr=E9ation de liste de diffusion
Dim OutlookApp As New Outlook.Application
Dim Liste As Outlook.DistListItem
Dim Desti As Outlook.Recipient
Set Liste =3D OutlookApp.CreateItem(olDistributionListItem)
Liste.DLName =3D "NomDeLaListe"
For Each c In Range("A1:A3")
Set Desti =3D OutlookApp.Session.CreateRecipient(c.Value)
Desti.Resolve
Liste.AddMember Desti
Next c
Liste.Save
End Sub

Mais si la liste "NomDeLaListe" existe d=E9j=E0, il en sera cr=E9=E9 une
nouvelle portant le m=EAme nom. Comment peut-on v=E9rifier l'existence
d'une liste portant ce com, et la supprimer ?

Merci !

2 réponses

Avatar
Geo


Mais si la liste "NomDeLaListe" existe déjà, il en sera créé une
nouvelle portant le même nom. Comment peut-on vérifier l'existence
d'une liste portant ce com, et la supprimer ?


En effet, c'est assez surprenant.
Ajoutez ce code au début de votre procédure.
Dim Ns As NameSpace
Dim Carnet As MAPIFolder
Set Ns = OutlookApp.GetNamespace("MAPI")
Set Carnet = Ns.GetDefaultFolder(olFolderContacts)
Carnet.Items("NomDeLaListe").Delete
Si la liste n'existe pas ça ne provoque même pas d'erreur.

--
A+

Avatar
DoMi
Super !

Merci !
DoMi

On 19 mai, 22:36, Geo wrote:

Mais si la liste "NomDeLaListe" existe déjà, il en sera créé une
nouvelle portant le même nom. Comment peut-on vérifier l'existence
d'une liste portant ce com, et la supprimer ?


En effet, c'est assez surprenant.
Ajoutez ce code au début de votre procédure.
     Dim Ns As NameSpace
     Dim Carnet As MAPIFolder
     Set Ns = OutlookApp.GetNamespace("MAPI")
     Set Carnet = Ns.GetDefaultFolder(olFolderContacts)
     Carnet.Items("NomDeLaListe").Delete
Si la liste n'existe pas ça ne provoque même pas d'erreur.

--
A+