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

créer un mailing-list en cc avec adresses saisies sous Excel

4 réponses
Avatar
chrysalinde
250 adresses sont saisies sous EXCEL.
Je dois envoyer un mailing list à ces adresses en copie cachée!
Comment procéder pour conserver ces adresses sous EXCEL et en même temps,
créer une liste (en copie cachée) réutilisable, par la suite? Comment
modifier cette liste quand une adresse est changée sous EXCEL?
Grand merci.

4 réponses

Avatar
Daniel.C
Bonjour.

D'abord, dans la fenêtre Visual Basic Editor, clique sur les menus
Outils, Références et coche la case correspondant à :
Microsoft Outlook nn Object Library
La macro a été testée avec Outlook 2007.
Les adresses se trouvent en colonne A de la feuille active.

1. Creer une liste de diffusion :

Sub CreerListeDeDiffusion()
Dim olApp As New Outlook.Application
Dim NS As Namespace
Dim Desti As Recipient
Dim Liste As Outlook.DistListItem
Set olApp = Outlook.Application
Set NS = olApp.GetNamespace("MAPI")
Set Dossier = NS.GetDefaultFolder(olFolderContacts)
Set Liste = olApp.CreateItem(olDistributionListItem)
Liste.DLName = "Test1"
For Each c In Range("A1", [A65536].End(xlUp))
Set Desti = olApp.Session.CreateRecipient(c)
Desti.Resolve
Liste.AddMember Desti
Next c
Liste.Save
End Sub

2. Envoyer un mail avec la liste en CCI :

Sub Message()
Set olApp = CreateObject("Outlook.application")
Set m = olApp.CreateItem(olMailItem)
With m
.Subject = "Subject"
.Body = "Body"
.Recipients.Add ""
.BCC = "Test1"
.Send
End With
End Sub

3. Suppression et recréation de la liste en cas de modification de la
liste (la macro suivante est à copier dans le module feuille) :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column > 1 Then Exit Sub
Dim olApp As New Outlook.Application
Dim NS As Namespace
Dim Desti As Recipient
Dim Liste As Outlook.DistListItem
Set olApp = Outlook.Application
Set NS = olApp.GetNamespace("MAPI")
Set dossier = NS.GetDefaultFolder(olFolderContacts)
Set Liste = dossier.Items("Test1")
Liste.Delete
Set Liste = olApp.CreateItem(olDistributionListItem)
For Each c In Range("A1", [A65536].End(xlUp))
Set Desti = olApp.Session.CreateRecipient(c)
Desti.Resolve
Liste.AddMember Desti
Next c
Liste.Save

End Sub


250 adresses sont saisies sous EXCEL.
Je dois envoyer un mailing list à ces adresses en copie cachée!
Comment procéder pour conserver ces adresses sous EXCEL et en même temps,
créer une liste (en copie cachée) réutilisable, par la suite? Comment
modifier cette liste quand une adresse est changée sous EXCEL?
Grand merci.


Avatar
Daniel.C
Oups.
Modifier :
3.
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column > 1 Then Exit Sub
Dim olApp As New Outlook.Application
Dim NS As Namespace
Dim Desti As Recipient
Dim Liste As Outlook.DistListItem
Set olApp = Outlook.Application
Set NS = olApp.GetNamespace("MAPI")
Set dossier = NS.GetDefaultFolder(olFolderContacts)
Set Liste = dossier.Items("Test1")
Liste.Delete
Set Liste = olApp.CreateItem(olDistributionListItem)
Liste.DLName = "Test1"
For Each c In Range("A1", [A65536].End(xlUp))
Set Desti = olApp.Session.CreateRecipient(c)
Desti.Resolve
Liste.AddMember Desti
Next c
Liste.Save

End Sub

Daniel

Bonjour.

D'abord, dans la fenêtre Visual Basic Editor, clique sur les menus Outils,
Références et coche la case correspondant à :
Microsoft Outlook nn Object Library
La macro a été testée avec Outlook 2007.
Les adresses se trouvent en colonne A de la feuille active.

1. Creer une liste de diffusion :

Sub CreerListeDeDiffusion()
Dim olApp As New Outlook.Application
Dim NS As Namespace
Dim Desti As Recipient
Dim Liste As Outlook.DistListItem
Set olApp = Outlook.Application
Set NS = olApp.GetNamespace("MAPI")
Set Dossier = NS.GetDefaultFolder(olFolderContacts)
Set Liste = olApp.CreateItem(olDistributionListItem)
Liste.DLName = "Test1"
For Each c In Range("A1", [A65536].End(xlUp))
Set Desti = olApp.Session.CreateRecipient(c)
Desti.Resolve
Liste.AddMember Desti
Next c
Liste.Save
End Sub

2. Envoyer un mail avec la liste en CCI :

Sub Message()
Set olApp = CreateObject("Outlook.application")
Set m = olApp.CreateItem(olMailItem)
With m
.Subject = "Subject"
.Body = "Body"
.Recipients.Add ""
.BCC = "Test1"
.Send
End With
End Sub

3. Suppression et recréation de la liste en cas de modification de la liste
(la macro suivante est à copier dans le module feuille) :

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column > 1 Then Exit Sub
Dim olApp As New Outlook.Application
Dim NS As Namespace
Dim Desti As Recipient
Dim Liste As Outlook.DistListItem
Set olApp = Outlook.Application
Set NS = olApp.GetNamespace("MAPI")
Set dossier = NS.GetDefaultFolder(olFolderContacts)
Set Liste = dossier.Items("Test1")
Liste.Delete
Set Liste = olApp.CreateItem(olDistributionListItem)
For Each c In Range("A1", [A65536].End(xlUp))
Set Desti = olApp.Session.CreateRecipient(c)
Desti.Resolve
Liste.AddMember Desti
Next c
Liste.Save

End Sub


250 adresses sont saisies sous EXCEL.
Je dois envoyer un mailing list à ces adresses en copie cachée!
Comment procéder pour conserver ces adresses sous EXCEL et en même temps,
créer une liste (en copie cachée) réutilisable, par la suite? Comment
modifier cette liste quand une adresse est changée sous EXCEL?
Grand merci.




Avatar
Jac
... autre solution : tu fais un publipostage dans Word qui s'appuie sur
ton fichier Excel et tu

chrysalinde a écrit :
250 adresses sont saisies sous EXCEL.
Je dois envoyer un mailing list à ces adresses en copie cachée!
Comment procéder pour conserver ces adresses sous EXCEL et en même temps,
créer une liste (en copie cachée) réutilisable, par la suite? Comment
modifier cette liste quand une adresse est changée sous EXCEL?
Grand merci.


Avatar
Jac
... autre solution, tu crées un publipostage qui s'appuie sur tes
données Excel et tu fusionnes avec un message électronique (avant
dernière icône de la barre d'icônes fusion et publipostage).

On en reparle quand tu veux.

Jac

chrysalinde a formulé ce vendredi :
250 adresses sont saisies sous EXCEL.
Je dois envoyer un mailing list à ces adresses en copie cachée!
Comment procéder pour conserver ces adresses sous EXCEL et en même temps,
créer une liste (en copie cachée) réutilisable, par la suite? Comment
modifier cette liste quand une adresse est changée sous EXCEL?
Grand merci.