Envoi mail à 2000 destinataires

HUGS

XLDnaute Nouveau
Bonjour,

J'ai ce script qui fonctionne bien pour envoyer des mails :

Sub EnvoiUnMail()
Dim MailAd As String
Dim Msg As String
Dim Subj As String
Dim URLto As String
MailAd = Range("A1")
Subj = Range("A2")
Msg = Msg & Range("A3")
URLto = "mailto:" & MailAd ' & "?subject=" & Subj & "&body=" & Msg
ActiveWorkbook.FollowHyperlink Address:=URLto
End Sub


Mon soucis c'est que je souhaiterai faire l'envoi d'un mail à "plusieurs" personnes (jusqu'à 2000) et ce script ne fonctionne pas au dessus de 20/30 emails.

Quelqu'un a -til une idée ?

Par avance merci

HUGS

(ci-joint 1 classeur exemple de mon problème ;) )
 

Pièces jointes

  • Exemple mailing.xls
    41.5 KB · Affichages: 280

HUGS

XLDnaute Nouveau
Re : Envoi mail à 2000 destinataires

J'ai fait l'essai et outlook supporte bien le fait de créer un mail avec 1000 destinataire.
Par contre la macro excel, elle, beugue quand le mail est à créer avec + de 20 ou 30 destinataires.
??
 

Staple1600

XLDnaute Barbatruc
Re : Envoi mail à 2000 destinataires

Bonsoir à tous


MailAd = Range("A1")
Que contient la cellule A1?

Comme le souligne bhbh, combien de caractères en A1?


URLto = "mailto:" & MailAd ' & "?subject=" & Subj & "&body=" & Msg
J'en déduis que tu n'utilises pas ce que tu as mis en commentaires
(ce qui est en bleu)

Si c'est le cas, tu peux supprimer ces lignes ci-dessous
Dim Msg As String
Dim Subj As String

Subj = Range("A2")
Msg = Msg & Range("A3")

Mais dans ce cas, tu envoies des messages sans sujet ni message ??
 
Dernière édition:

HUGS

XLDnaute Nouveau
Re : Envoi mail à 2000 destinataires

Oui, je souhaite juste utiliser A1 pour compléter le champs "A:" avec de nombreux destinataires dans mon mail (pour gérer des listes de diffusions paramétrables).
Comme semble le dire BHBH ce doit être le nombre de caractère trop important qui fait beuguer ce script.
Est-ce que quelqu'un sait comment je peux contourner ce problème ?
Merci de votre aide.
 

Staple1600

XLDnaute Barbatruc
Re : Envoi mail à 2000 destinataires

Re


En mettant les destinataires

dans la colonne A
Code:
Sub A_tester()
Dim Adresse As Range
Dim MailAd As String
Dim URLto As String
'à adapter pour aller jusqu'à 2000
For Each Adresse In Range("A1:A10")
If Not IsEmpty(Adresse) Then
MailAd = Adresse.Text & ";"
End If
Next
URLto = "mailto:" & MailAd
ActiveWorkbook.FollowHyperlink Address:=URLto
End Sub
 

HUGS

XLDnaute Nouveau
Re : Envoi mail à 2000 destinataires

Merci de ta réponse JM mais malheureusement avec ce script le mail a uniquement le destinataire de la ligne 10.
J'ai peur que le "MailAd =" ne supporte pas + d'un certain nombre de caractères, 200 ou 300 ?
non ?
help :( .......
 

HUGS

XLDnaute Nouveau
Re : Envoi mail à 2000 destinataires

J'ai modifié ton code qui fonctionne à présent mais bloque toujours, cette fois à 49 destinataires, soit 920 caractères.

Sub A_tester()
feuille_courante = ActiveSheet.Name
With Worksheets(feuille_courante)
Dim Adresse As Range
Dim MailAd As String
Dim URLto As String
'à adapter pour aller jusqu'à 2000, bloque à partir de 50 => "erreur d'éxécution 5"
For i = 1 To 49
Adresse2 = Cells(i, 1).Value
MailAd = MailAd & ";" & Adresse2 & ";"
Next
URLto = "mailto:" & MailAd
ActiveWorkbook.FollowHyperlink Address:=URLto
End With
End Sub


Est-ce une limite du VBA excel à 920 caractères dans "MailTo" ??

Merci d'avance si quelqu'un a l'info ...................xxxxxxxxxxxxxx

HUGS
 

Staple1600

XLDnaute Barbatruc
Re : Envoi mail à 2000 destinataires

Re

Désolé j'avais oublié ce petit ajout

Code:
Sub A_REtester()
Dim Adresse As Range
Dim MailAd As String
Dim URLto As String
'à adapter pour aller jusqu'à 2000
For Each Adresse In Range("A1:A10")
If Not IsEmpty(Adresse) Then
[B]MailAd = MailAd & Adresse.Text & ";"[/B]
End If
Next
URLto = "mailto:" & MailAd
ActiveWorkbook.FollowHyperlink Address:=URLto
End Sub
 

chris

XLDnaute Barbatruc
Re : Envoi mail à 2000 destinataires

Bonjour

Pour info les serveurs de messagerie considèrent comme spam les mails ayant trop de destinataires. Il classent le mail en indésirable, voire même l'expéditeur.
100 est un grand maximum, 50 est correct.
 

chris

XLDnaute Barbatruc
Re : Envoi mail à 2000 destinataires

Re

Non car la liste n'est gérée que pour simplifier la rédaction mais elle est décomposée par Outkook juste avant le transmission.

Autre problème : les serveurs ne permettent généralement pas plus de 100 envois similaires dans un temps donné : une heure au mieux.

L'e.mailing en grand nombre devient compliqué !
 

Discussions similaires

  • Question
Microsoft 365 Macro VBA
Réponses
2
Affichages
420
Réponses
2
Affichages
120

Statistiques des forums

Discussions
312 305
Messages
2 087 081
Membres
103 457
dernier inscrit
fab2614