Envoi feuille excel par mail à plusieurs destinataires [Résolu/Fermé]

Signaler
-
 Eric -
Bonjour,

Je débute en macro et souhaite envoyer une feuille à plusieurs destinataires.
Si je mets qu'une adresse mail c'est OK mais avec deux pas.

Le message d'erreur:
"Erreur d’exécution '1004': La liste des destinataires contient un nom de destinataire inconnu. Utilisez un nom valide et réessayez."

Voici ma macro:
Sub EnvoiPage()

Dim Email As String, Sujet As String
Dim AccuseReception As Boolean

Sheets("Valeurs").Select 'Saisir le nom exact la feuille
ActiveSheet.Copy 'Crée une copie de la feuille active

Email = "***@***; " & _
        "***@***"

Sujet = "Envoi automatique: Consommations"
AccuseReception = True

ActiveWorkbook.SendMail Email, Sujet, AccuseReception
Application.DisplayAlerts = False
ActiveWorkbook.Close 'ferme la copie de la feuille active
Application.DisplayAlerts = True
MsgBox "L'email a bien été transmis aux destinataires suivants: ***@*** & ***@***"
End Sub


Si qqun peut m'ader :-)

EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.

2 réponses

Messages postés
8
Date d'inscription
mercredi 1 octobre 2008
Statut
Membre
Dernière intervention
15 janvier 2017

Aide Excel : Email "Spécifie le nom du destinataire sous la forme de texte ou, s'il y a plusieurs destinataires, d'un tableau de chaînes de caractères."
Donc : Email doit représenter un tableau


Perso, je fais ça en pilotant Outlook depuis Excel :
Dim OutlookApp As Outlook.Application ' Outils > références > Microsoft Outlook 14 Object Library
Dim Racine As Outlook.Namespace ' Le contenant Outlook
Dim LaBoite As Outlook.MAPIFolder ' Sera la boite des brouillons
Dim ListeMessages As Outlook.Items ' La collection des messages
Merci pour ta réponse.

Ça doit être un tableau dans le fichier excel? (je suis vraiment mauvais)

Je ne veux pas trop directement piloter Outlook car c'est un fichier qui est sur réseau et on est plusieurs personnes à le faire en fait
Messages postés
13290
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 novembre 2020
747
Dim Email() As String

Email= Array("***@***", "***@***")
En faisant comme ça, j'ai un autre message: Erreur d'exécution '13': Incompatibilité de type
Messages postés
13290
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 novembre 2020
747
Peux-tu montrer ton code modifié, et indiquer à quelle ligne tu as l'erreur?
L'erreur est à la ligne: Email = Array("***@***", "***@***")

Sub EnvoiPage()

Dim Email() As String
Dim Sujet As String
Dim AccuseReception As Boolean

Sheets("Valeurs").Select 'Saisir le nom exact la feuille
ActiveSheet.Copy 'Crée une copie de la feuille active

Email = Array("***@***", "***@***")
Sujet = "Envoi automatique: Consommations"
AccuseReception = True

ActiveWorkbook.SendMail Email(), Sujet, AccuseReception
Application.DisplayAlerts = False
ActiveWorkbook.Close 'ferme la copie de la feuille active
Application.DisplayAlerts = True
MsgBox "L'email a bien été transmis aux destinataires suivants: ***@*** & ***@***"
End Sub
Messages postés
13290
Date d'inscription
lundi 9 juin 2008
Statut
Contributeur
Dernière intervention
25 novembre 2020
747
et avec :
Dim Email() As Variant
?
C'est nickel, ça fonctionne!

Merci beaucoup :-)