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 :

Envoie mail avec fichier PDF


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Homme Profil pro
    Chef de fabrication
    Inscrit en
    Février 2017
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Chef de fabrication
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Février 2017
    Messages : 38
    Points : 18
    Points
    18
    Par défaut Envoie mail avec fichier PDF
    Bonjour à tous,

    je reviens vers vous car je bloque sur l'envoie par mail d'une feuille Excel en PDF. Mon code pour l'envoie fonctionne parfaitement, le seul problème vient de mes 3 dernières lignes de codes. En effet, la macro m'envoie le fichier complet en .xls en pièce jointe du mail alors que je souhaiterais qu'il m'envoie la feuille active en PDF. J'ai essayé d'appliquer plusieurs codes différents sur le forum mais cela ne fonctionne pas. Pourriez-vous m'aider ?

    Pour info, j'ai déjà un code qui me créer un fichier PDF pour sauvegarde.

    Merci pour votre aide.

    Envoie du mail
    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
    Sub EnvoiPage()
     
    Dim Destinataires(1) As String, Sujet As String
    Dim AccuseReception As Boolean
        'Modifier les mails des destinataires
    Destinataires(1) = Range("F18").Value
     
    Sujet = "Bon de commande" & " " & Range("G6").Value
    Body = "Bonjour," & vbCrLf & vbCrLf & "Vous trouverez en pièce jointe notre bon de commande."
    AccuseReception = True
     
    ThisWorkbook.Sheets("BdC").Copy
    ActiveSheet.SendMail Destinataires, Sujet, AccuseReception
    ActiveWorkbook.Close False
     
    End Sub
    Génération de la feuille active en PDF
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Sub PDF()
    'Enregistrement du fichier en format pdf
     
    Dim LaDate As String, LeParcours As String, LeRep As String, Ref As String
    LaDate = Format(Date, "dd-mm-yyyy")
    LeParcours = Range("F11").Value
    Ref = Range("G8").Value
    LeRep = ThisWorkbook.Path & "\Archives\"  ' à adapter
    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
    LeRep & LaDate & "_" & Ref & "_" & LeParcours & ".pdf", Quality:= _
    xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False, _
    From:=1, To:=1, OpenAfterPublish:=False
     
    End Sub

  2. #2
    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,

    la macro m'envoie le fichier complet en .xls en pièce jointe du mail alors que je souhaiterais qu'il m'envoie la feuille active en PDF
    C'est somme toute logique.
    Ton code effectue cette action.

    A mon sens, il serait plus efficace d'enregistrer directement la feuille de travail sous format PDF puis de gérer Outlook par la méthode .de l'item

    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.


  3. #3
    Membre à l'essai
    Homme Profil pro
    Chef de fabrication
    Inscrit en
    Février 2017
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Chef de fabrication
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Février 2017
    Messages : 38
    Points : 18
    Points
    18
    Par défaut
    Bonjour MarcelG,

    À quel endroit dois-je insérer ce code ? Et quelle valeur dois-je lui mettre ou quel fichier car j'effectue plusieurs envois différents avec un fichier PDF différent.

  4. #4
    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
    Salut Franck,

    Avant toute chose, voici l'adresse de la partie FAQ consacrée aux messageries.

    Voici, voilou!

    Tu peux argumenter une procédure d'envoi mail par le chemin complet du fichier PDF.

    CODE A ADAPTER

    Ne pas oublier d'activer la référence "Microsoft Outlook xx.x Object Library"

    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
    31
    32
    33
    34
    35
    36
    37
    Option Explicit
     
    Dim lapj As String
     
    Sub sauve_pdf()
     
    'Répertoire & "\" & nompdf (avec extension)
    lapj = "\\Mesdocs\leforum\tata.pdf"
     
    ThisWorkbook.Worksheets("Tb_Bord").ExportAsFixedFormat Type:=xlTypePDF, Filename:=lapj
     
    Call CreationMail(lapj)
     
    End Sub
     
    Sub CreationMail(lapiecejointe As String)
     
        Dim OlApp As Outlook.Application
        Dim OlItem As Outlook.MailItem
     
        Set OlApp = New Outlook.Application
        Set OlItem = OlApp.CreateItem(olMailItem)
     
        With OlItem
            .To = "ladresse@jaune.fr"
            .Subject = "Le titre du message"
            .Attachments.Add lapiecejointe
            .Body = "Coucou"
            .Display
            .Save
            .Send
        End With
     
        Set OlItem = Nothing
        Set OlApp = Nothing
     
    End Sub

    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.


  5. #5
    Membre à l'essai
    Homme Profil pro
    Chef de fabrication
    Inscrit en
    Février 2017
    Messages
    38
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Seine Maritime (Haute Normandie)

    Informations professionnelles :
    Activité : Chef de fabrication
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Février 2017
    Messages : 38
    Points : 18
    Points
    18
    Par défaut :RE
    Merci MarcelG, après avoir adapter le code, celui-ci fonctionne parfaitement.

    Merci beaucoup pour votre aide.

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

Discussions similaires

  1. [Toutes versions] Excel figé suite macro qui envoie mail avec fichier PDF joint issu d'une plage filtrée
    Par Hocked dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/02/2016, 13h42
  2. Réponses: 4
    Dernier message: 07/10/2014, 08h42
  3. [XL-2007] Erreur sur mon code envoi mail avec fichier joint
    Par capi81 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 25/08/2014, 18h08
  4. Envoi Mail avec fichier joint compressé
    Par dav_e77 dans le forum Général VBA
    Réponses: 1
    Dernier message: 25/11/2006, 17h27
  5. envoi mail avec fichier joint
    Par dietrich dans le forum API standards et tierces
    Réponses: 14
    Dernier message: 28/02/2006, 14h42

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