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 :

Envoi d'une pièce jointe par email (OUTLOOK) avec macro excel


Sujet :

Macros et VBA Excel

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    757
    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 : 757
    Points : 572
    Points
    572
    Par défaut Envoi d'une pièce jointe par email (OUTLOOK) avec macro excel
    Bonjour,

    Je souhaite envoyer un mail avec la macro suivante :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    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
    Mais je n'arrive pas à envoyer une pièce jointe. J'ai essayé avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    .Attachment
    .Attachments
    .Addattachment
    .Attachmentadd
    .Attachments.Add
    .Addpiece
    ..etc
    Je ne trouve pas non plus sur l'aide de Outlook.

    Merci
    OS : LinuxMint 20

  2. #2
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    pour t'aider tu aurais pu déclarer ta variable a :


    et pour l'ajout de la piéce :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    With a 
    (...)
      .Attachments.Add ("C:\tmp\Monfichier.txt")
     
    (...)

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    757
    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 : 757
    Points : 572
    Points
    572
    Par défaut
    Bonjour,

    Tu me conseille de changer le SET a "olMailItem" par un Dim "MailItem" ?
    Quelle est la différence s'il te plaît ?

    J'avais déjà essayé avec Attachments.Add("fichier.html") mais cela ne fonctionne pas !
    J'obtiens l'erreur suivante :
    "Erreur d'exécution '-2147352567 (80020009)':
    Echec de l'opération"



    Peut-être y a-t-il un ordre lorsque j'écris les commandes ?

    par exemple écrire ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    .subject = "le sujet du mail"
    .Attachments.Add ("chemin")
    Au lieu de :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    .Attachments.Add ("chemin")
    .subject = "le sujet du mail"
    ????
    OS : LinuxMint 20

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    Citation Envoyé par francky74 Voir le message
    Bonjour,

    Tu me conseille de changer le SET a "olMailItem" par un Dim "MailItem" ?
    Quelle est la différence s'il te plaît ?
    que nini .. il faut les 2 ... : avant d'utiliser une variable il faut la déclarer (même si VB.. le fait tout seul pour toi voir ici ) !!


    Citation Envoyé par francky74 Voir le message
    Bonjour,
    J'avais déjà essayé avec Attachments.Add("fichier.html") mais cela ne fonctionne pas !
    J'obtiens l'erreur suivante :
    "Erreur d'exécution '-2147352567 (80020009)':
    Echec de l'opération"

    et avec le bon chemin ?
    [edit] tu met quoi dans ton code à la place de "Chemin" ?

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    757
    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 : 757
    Points : 572
    Points
    572
    Par défaut
    Ok j'ai ajouté aussi la ligne dim ...

    voici mon chemin "C:\Users\MonID\Desktop\questionnaire.html"
    Ceci dit, j'avais oblié une parenthèse, et donc tout a évolué !
    avec le code suivant, j'obtiens le message d'erreur avec .Add surligné : "Argument non facultatif"

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .Attachments.Add = ("C:\Users\MonID\Desktop\questionnaire.html")
    C'est bizzare ... argument non facultatif ... cela signifie qu'il est obligatoire ... et pourtant il est présent !
    OS : LinuxMint 20

  6. #6
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038
    Par défaut
    pourquoi un signe : = ?

  7. #7
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    757
    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 : 757
    Points : 572
    Points
    572
    Par défaut

    Je l'ai mis parce que les autres commandes en ont un.
    par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    .To = "xxx@xx.fr""
    .Subject = "blablasujet"
    etc ...
    Mais en fait il ne le fallait pas !

    Résultat ca marche !

    et voilà


    Bonjour !

    Existe-t-il une liste avec des commandes pour contrôler OUTLOOK grâce aux macros EXCEL ??? Je n'en ai trouvé nulle part !

    Merci,
    OS : LinuxMint 20

  8. #8
    Expert éminent
    Avatar de MarcelG
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Juillet 2009
    Messages
    3 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 66
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Finance

    Informations forums :
    Inscription : Juillet 2009
    Messages : 3 449
    Points : 7 149
    Points
    7 149
    Billets dans le blog
    7
    Par défaut
    Bonjour Franck, Bonjour le Forum,

    1 - Dans tes options de ton éditeur VBE, coche l'option

    "Complément automatique des instructions"

    2 - Après ton instruction

    Le fait d'écrire un point "." te donnera toutes les méthodes applicables. Il ne te restera plus alors qu'à consulter l'aide en ligne (F1) de chaque méthode.

    Bonne journée à tous.

    Bien Cordialement.

    Marcel

    Dernier billet:
    Suppression des doublons d'un tableau structuré, gestion d'un array

    Pas de messagerie personnelle pour vos questions, s'il vous plaît. La réponse peut servir aux autres membres. Merci.


  9. #9
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 038
    Points
    20 038

  10. #10
    Membre confirmé
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Février 2008
    Messages
    757
    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 : 757
    Points : 572
    Points
    572
    Par défaut Grand merci
    Merci à vous !
    OS : LinuxMint 20

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

Discussions similaires

  1. Envoie une pièce jointe par mail en RPGle
    Par Lisogane dans le forum AS/400
    Réponses: 2
    Dernier message: 03/03/2011, 17h57
  2. Envoi d'une piece jointe par Email
    Par Ya7yaKech dans le forum Windows Forms
    Réponses: 7
    Dernier message: 04/04/2009, 13h58
  3. Envoi d'une piéce jointe dans un e-mail
    Par koKoTis dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 3
    Dernier message: 16/03/2009, 09h44
  4. Envoi d'une pièce jointe
    Par info.net dans le forum Langage
    Réponses: 5
    Dernier message: 14/03/2009, 21h00
  5. [Mail] Envoi du contenu d'une pièce jointe par mail
    Par nonhosonno dans le forum Langage
    Réponses: 2
    Dernier message: 28/02/2007, 13h42

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