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 :

Pb syntaxe VBA envoi message outlook [XL-2016]


Sujet :

Macros et VBA Excel

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Septembre 2012
    Messages : 73
    Points : 92
    Points
    92
    Par défaut Pb syntaxe VBA envoi message outlook
    Bonjour,

    J'ai un problème dans la syntaxe d'un macro qui me permet d'envoyer une feuille Excel en mail via Outlook.

    Le message part bien mais l'objet reste vide ou affiche des caractères sibyllins.
    Voici le texte de ma macro.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    Sub SendMail()
     
    ' Copy the sheet(1)
    ActiveSheet.Copy
     
    ' Send Email
    With ActiveWorkbook
    .SendMail Recipients:=Array(ActiveSheet.Range("adresse_mail").Value), Subject:=ActiveSheet.Range("chantier").Value & " code " & ActiveSheet.Range("A3").Value, _
    ReturnReceipt:=False 'True
    .Close SaveChanges:=False
    End With
     
    End Sub
    Si quelqu'un a une solution, je suis preneur.
    Merci, bonne journée.
    Cordialement

  2. #2
    Membre régulier
    Homme Profil pro
    Inscrit en
    Septembre 2012
    Messages
    73
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Secteur : Bâtiment

    Informations forums :
    Inscription : Septembre 2012
    Messages : 73
    Points : 92
    Points
    92
    Par défaut
    Bonjour,

    J'ai trouvé une autre solution sur le forum excel pratique (merci à lermite). De plus elle supprime le message de confirmation d'envoi d'Outlook.

    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
    26
    27
    28
    29
    30
     'Il faut activer la référence "Microsoft Outlook Library" Avant de lancer cette macro,
        ' Dans l'éditeur VBA: Faire Menu / Tools / Reference / Cocher "Microsoft Outlook Library"
        Sub Envoyer_Mail_Outlook()
        Dim ObjOutlook As New Outlook.Application
        Dim oBjMail
        Dim Nom_Fichier As String
     
            Set ObjOutlook = New Outlook.Application
            Set oBjMail = ObjOutlook.CreateItem(olMailItem)
        '---------------------------------------------------------
           'Exemple pour envoyer un classeur en pièce jointe
           'Nom_Fichier = Application.GetOpenFilename("Fichier excel (*.xls;*.xlsx;*.xlsm), *.xls;*.xlsx;*.xlsm")
           'If Nom_Fichier = "Faux" Then Exit Sub
        '---------------------------------------------------------
           'Ou bien entrer le path et nom du fichier autrement
           Nom_Fichier = "C:\Users\JoDan\Desktop\Mouvement materiel.xlsm"
            If Nom_Fichier = "" Then Exit Sub
        '---------------------------------------------------------
             With oBjMail
                .To = ActiveSheet.Range("adresse_mail").Value ' le destinataire
               .Subject = ActiveSheet.Range("T10").Value        ' l'objet du mail
               .Body = "Envoi mvt"  'le corps du mail ..son contenu
               '.Attachments.Add Nom_Fichier '"C:\Data\essai.txt" ' ou Nomfichier
               '.Display  '   Ici on peut supprimer pour l'envoyer sans vérification
               .Send
            End With
            ObjOutlook.Quit
            Set oBjMail = Nothing
            Set ObjOutlook = Nothing
        End Sub
    Bonne journée,
    Cordialement

  3. #3
    Membre éprouvé
    Homme Profil pro
    Directeur
    Inscrit en
    Avril 2003
    Messages
    724
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur

    Informations forums :
    Inscription : Avril 2003
    Messages : 724
    Points : 1 166
    Points
    1 166
    Par défaut
    Intéressant, merci pour l'info.
    Cordialement,

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

Discussions similaires

  1. [XL-2010] Envoi mail Outlook adresse - objet - message et vba Excel
    Par modus57 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 27/05/2015, 12h45
  2. envoi mail outlook avec vba excel
    Par momolamoto dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/09/2010, 10h45
  3. [Automation][VBA]Envoi d'email avec Outlook
    Par andy292929 dans le forum VBA Access
    Réponses: 2
    Dernier message: 03/04/2007, 10h04
  4. [VBA] Envoie de mail via outlook
    Par sperchey dans le forum Access
    Réponses: 7
    Dernier message: 21/02/2007, 16h35
  5. [VBA] Envoi mail sans passer par outlook
    Par PoZZyX dans le forum Access
    Réponses: 8
    Dernier message: 12/04/2006, 16h27

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