IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Mail vers plusieurs destinataire avec outlook [XL-2003]


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Mail vers plusieurs destinataire avec outlook
    Bonjour,

    Le but de la macro est un envoi de mail. Sachant que le code originel n'est pas de moi.
    Actuellement il est configuré pour envoyer le mail via l'application lotus or on vient de migrer vers outlook. Le but est donc d'envoyer les mails via Outlook.

    Code Lotus fonctionnel :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SendNotesMail sSubject, p_sAttach, p_arRecip(), sBody, True
    Voilà mon code Outlook (non-fonctionnel) correspondant :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Dim OutlookApp As New Outlook.Application
                Dim Mess As Outlook.MailItem
                Set OutlookApp = Outlook.Application
                Set Mess = OutlookApp.CreateItem(olMailItem)
                With Mess
                .Attachments.Add p_sAttach
                .Subject = sSubject
                .Body = sBody
                .Recipients.Add p_arRecip()
                .Send
                End With
    J'ai une erreur au niveau de la partie en rouge.
    Après recherche, il s'avère que .Recipients.Add ne prend en compte qu'une seule adresse mail à la fois alors que p_arRecip() est un tableau comprenant plusieurs adresses.

    Si je met .Recipients.Add test@test.fr je reçois bien le mail.

    Comment faire pour envoyer un mail à plusieurs destinataires en même temps ?

  2. #2
    Membre éprouvé
    Avatar de ouisansdoute
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    931
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 931
    Points : 1 079
    Points
    1 079
    Par défaut
    Bonjour,

    Personnellement j'ai utilisé le code suivant et je peux faire des envois groupés :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
        Sub envoi_mail()
       
      Dim OutApp As Object
      Dim OutMail As Object
      Dim strbody As String
      Dim olFormatHTML As String
      
    
      Set OutApp = CreateObject("Outlook.Application")
      OutApp.Session.Logon
      Set OutMail = OutApp.CreateItem(0)
       strbody = "Information sur la mise à jour"
      On Error Resume Next
          With OutMail
              .To = "Prénom1nom1@toto.fr;marcel.durant@titi.fr"
              .CC = "Francois.pignon@free.fr;robin.des.bois@sherwood.gb"
              .Subject = "vivement les vacances"
              .BodyFormat = olFormatHTML
            .HTMLBody = "Bonjour, <BR><BR>Ce message est un mail automatique, il vous informe que… " 
              .Display
          End With
              On Error GoTo 0
           Set OutMail = Nothing
          Set OutApp = Nothing
      End Sub

  3. #3
    Membre à l'essai
    Inscrit en
    Novembre 2008
    Messages
    20
    Détails du profil
    Informations forums :
    Inscription : Novembre 2008
    Messages : 20
    Points : 10
    Points
    10
    Par défaut
    Salut,

    La méthode de ouisansdoute fonctionne très bien, mais si tu veux conserver ton code, il suffit simplement de boucler sur le recipient.add :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
    For iDest = 0 To UBound(p_arRecip) 
     .Recipients.Add p_arRecip(iDest)
    Next iDest
    ...

  4. #4
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mars 2007
    Messages
    7
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2007
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Merci à tous les 2, ça marche parfaitement maintenant.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Envoi mail à liste de destinataires avec pièce jointe et sans Outlook
    Par philippe.desrues dans le forum VBA Access
    Réponses: 1
    Dernier message: 11/07/2013, 15h35
  2. [Débutant] Plusieurs destinataires avec system.net.mail
    Par frag132 dans le forum VB.NET
    Réponses: 14
    Dernier message: 12/10/2011, 11h20
  3. Pousser des donnees depuis le serveur vers plusieurs clients avec WCF
    Par NoussaL dans le forum Windows Communication Foundation
    Réponses: 6
    Dernier message: 30/09/2008, 17h11
  4. Réponses: 3
    Dernier message: 02/07/2008, 19h08
  5. Réponses: 2
    Dernier message: 08/04/2008, 18h14

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo