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 :

créer et envoyer un email OUTLOOK depuis Excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2008
    Messages : 763
    Points : 576
    Points
    576
    Par défaut créer et envoyer un email OUTLOOK depuis Excel
    Bonjour,

    Je dois envoyer des emails automatiques depuis Excel (qui utilise Outlook Express par macro). J'ai trouvé ce code donné par Silkyroad :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    Sub MailOutlookExpress()
    Dim Adresse As String, Sujet As String, Texte As String
     
    Adresse = "Destinataire01@mail.fr;Destinataire02@mail.fr"
    Sujet = "Le sujet"
    Texte = "Bonjour," & vbCrLf & vbCrLf _
        & "Vous trouverez ci joint les infos demandées" & vbCrLf & vbCrLf & _
        "Cordialement" & vbCrLf & Environ("UserName")
     
    Shell "C:\Program Files\Outlook Express\msimn.exe " & "/mailurl:mailto:" & _
        Adresse & "?subject=" & Sujet & "&Body=" & Texte
    End Sub
    Le problème est que la dernière ligne (Shell ....) ne fonctionne pas. Excel me renvoie le message d'erreur suivant :
    "Erreur d'exécution 53 : Fichier introuvable"

    Pourtant, le fichier msimn.exe se trouve bien dans C\Program Files\Outlook Express
    Merci pour votre aide !


  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Formateur et développeur chez EXCELLEZ.net
    Inscrit en
    Novembre 2003
    Messages
    19 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur et développeur chez EXCELLEZ.net
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 19 128
    Points : 55 940
    Points
    55 940
    Billets dans le blog
    131
    Par défaut
    Salut.

    Le mot Mail comme recherche dans la donne 15 entrées, dont certaines te conviendront...

  3. #3
    Expert éminent sénior
    Avatar de kiki29
    Homme Profil pro
    ex Observeur CGG / Analyste prog.
    Inscrit en
    Juin 2006
    Messages
    6 132
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : ex Observeur CGG / Analyste prog.

    Informations forums :
    Inscription : Juin 2006
    Messages : 6 132
    Points : 11 272
    Points
    11 272
    Par défaut
    Salut, le code fourni par SilkyRoad fonctionne parfaitement chez moi ( Outlook Expresss ). dans le titre de ton post tu parles d'Outlook et non d'OutLook Express, la manière de procéder n'est pas la même , reste à te renseigner sur CDO : http://excel.developpez.com/faq/?pag...ailCDOexchange ?

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2008
    Messages : 763
    Points : 576
    Points
    576
    Par défaut
    Bonsoir,

    Merci pour vos réponses !
    Pierre, j'ai déjà bien fouillé dans les FAQ et je pense que la méthode de Silky est très adaptée à ce que je compte faire.

    KIKI, merci d'avoir essayé le code de Silky chez toi !
    J'ai vérifié sur ma machine et Outlook Express est bien présent aux chemins et noms indiqués dans la macro de Silky. Lorsque je disais simplement Outlook, c'était pour couper le nom .. Mais tu as raison ce n'est pas la même chose.

    Personne ne sait donc ce que signifie ce message d'erreur ?
    "Erreur d'exécution 53 : Fichier introuvable"
    Pourtant le fichier "msimn.exe" figure bien sur mon PC au chemin "C:\Program Files\Outlook Express\". De plus, lorsque je lance Outlook Express avec la souris depuis ce même chemin, il s'ouvre normalement !

    Je vais toutefois essayer avec CDO
    muchas gracias
    Grand merci ! A demain !

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2008
    Messages : 763
    Points : 576
    Points
    576
    Par défaut
    Salut à Tous,

    Au sujet du Code de silkyroad et, plus exactement, la ligne dont provient mon problème (Shell ...) :
    J'ai coupé cette ligne juste après le début et il me reste donc le code suivant
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Shell "C:\Program Files\Outlook Express\msimn.exe"
    Comme ceci, Outlook Express s'ouvre et donc mon chemin était bien correct. C'est la suite du code qui à l'air de ne pas fonctionner !
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
     & "/mailurl:mailto:" &  Adresse & "?subject=" & Sujet & "&Body=" & Texte
    En ce qui concerne le CDO, à la ligne .send, j'ai l'erreur suivante :

    "Erreur d'exécution '2147220960 (80040220)':
    La valeur de configuration "SendUsing" est non valide."

    Sachant que je n'envoie pas de fichier, je ai écris le code comme suivant (bien sûr avec des adresse mails valides non retranscrites dans ce code):
    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
     
    Sub Envoi_CDO1()
    Dim CdoMessage As CDO.Message
    'Dim Fichier As Variant
     
        'ChDir "C:\Documents and Settings\UserName\Mes documents\PdfOut"
        'Fichier = Application.GetOpenFilename("Fichiers PDF (*.pdf), *.pdf")
     
        'If Fichier = False Then Exit Sub
     
        Set CdoMessage = New CDO.Message
        With CdoMessage
            .Subject = "Exemple"
            .From = "xxxxx@wanadoo.fr"
            .To = "yyyyy@orange.fr"
            .CC = ""
            '.BCC = ""
            .TextBody = "Texte dans le corps de message"
            '.AddAttachment Fichier
            .Send
        End With
     
        Set CdoMessage = Nothing
    End Sub
    PS : j'ai coché "Microsoft CDO for windows 2000 Library" et "Microsoft CDO 1.21 Library". Par contre, je n'ai pas la librairie indiquée dans le FAQ de KIKI29 ("Microsoft CDO for Exchange xxxx Library").
    http://excel.developpez.com/faq/?pag...ailCDOexchange

    Merci pour vos aides !

  6. #6
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    763
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2008
    Messages : 763
    Points : 576
    Points
    576
    Par défaut Résolution avec Outlook (pas Express)
    Youpiiii

    J'ai finalement réussi à envoyer un email.
    J'ai dû laisser tomber "Outlook Express" et "CDO" pour envoyer via Outlook de la façon suivante et en HTML.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Sub test()
        Set a = Outlook.CreateItem(olMailItem)
        With a
            .To = "xxxx@xxxx.com"
            .Subject = "test mail pour COBAYE31"
            .BodyFormat = olFormatHTML
            .HTMLBody = "le texte en html avec du <b>gras</b> de <i>l'italique</i> etc..."
            .Send
        End With
    End Sub
    ENJOY

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

Discussions similaires

  1. [XL-2010] Pièce jointe d'un email sous Outlook depuis Excel
    Par liop49 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 03/04/2014, 09h16
  2. [XL-2010] Modification modèle email Outlook depuis Excel
    Par stefun91 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 13/09/2013, 17h28
  3. [XL-2007] Accéder au bookmarks d'email Outlook depuis Excel/VBA
    Par CSharpDev dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 10/01/2013, 11h55
  4. [XL-2010] Créer un mail Outlook depuis Excel (avec signets)
    Par blanka347 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 28/10/2011, 19h29
  5. Envoi du Classeur par Email directement depuis Excel
    Par nono le golfeur dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 23/01/2007, 11h34

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