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 :

Enregistrer un doc excel en pdf pour un envoi mail via macro [XL-2013]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Janvier 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Assistante de direction
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2018
    Messages : 4
    Par défaut Enregistrer un doc excel en pdf pour un envoi mail via macro
    Bonjour,

    Je suis une novice en programmation par des macro sur excel.
    Je dois faire un tableau excel où lorsque l'on appuie sur un bouton cela génère un pdf avec la date et cela l'envoie à une adresse mail mise dans une cellule.

    J'ai réussi à créer un bouton qui créé le pdf souhaité et un autre pour l'envoie mais je n'arrive pas à lier les 2 ni à avoir l'email souhaité grâce à une cellule.

    Vous trouverez en pièce jointe mon fichier test. Si vous pouvez m'aider...

    D'avance merci !Andignac2.xlsm

  2. #2
    Expert confirmé
    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
    Par défaut
    Salut, va voir ici

  3. #3
    Nouveau membre du Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Janvier 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Assistante de direction
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2018
    Messages : 4
    Par défaut
    Merci pour votre lien, cela m'a beaucoup aidé. Par contre, après avoir copié le VBA suivant et en l'adaptant à mon fichier (enfin je crois), j'ai un souci au niveau du "FileName = RDB_Create_PDF...

    Cela me dit "erreur de compilation, sub ou function non définie". Je ne sais pas quoi faire pour rectifier le tir. Comme je l'ai dit, je suis une débutante...

    Pouvez-vous m'aider ?


    D'avance merci.

    Cordialement,
    Ludivine
    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
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    Sub Mail_Every_Worksheet_With_Address_In_A1_PDF()
    'Working only in 2007 and up
        Dim sh As Worksheet
        Dim TempFilePath As String
        Dim TempFileName As String
        Dim FileName As String
     
        'Temporary path to save the PDF files
        'You can also use another folder like
        'TempFilePath = "C:\Users\Ron\MyFolder\"
        TempFilePath = "C:\Users\Ludivine\Documents\XXDivers\info cuisine\Frédéric Blanc"
     
        'Loop through every worksheet
        For Each sh In ThisWorkbook.Worksheets
            FileName = "test11"
     
            'Test A1 for a mail address
            If sh.Range("A7").Value Like "?*@?*.?*" Then
     
                      'If there is a mail address in A1 create the file name and the PDF
                TempFileName = TempFilePath & "Sheet " & sh.Name & " of " _
                             & ThisWorkbook.Name & " " _
                             & Format(Now, "dd-mmm-yy h-mm-ss") & ".pdf"
     
                FileName = RDB_Create_PDF(Source:=sh, _
                                          FixedFilePathName:=TempFileName, _
                                          OverwriteIfFileExist:=True, _
                                          OpenPDFAfterPublish:=False)
     
                'If publishing is OK create the mail
                If FileName <> "" Then
                    RDB_Mail_PDF_Outlook FileNamePDF:=FileName, _
                                         StrTo:=sh.Range("A7").Value, _
                                         StrCC:="", _
                                         StrBCC:="", _
                                         StrSubject:="This is the subject", _
                                         Signature:=True, _
                                         Send:=False, _
                                         strbody:="Bonjour, <BR><BR>Voici la commande pour le restaurant Georges Blanc<BR><BR>Merci d'avance<BR><BR>Frédéric"
                Else
                    MsgBox "Not possible to create the PDF, possible reasons:" & vbNewLine & _
                           "Microsoft Add-in is not installed" & vbNewLine & _
                           "You Canceled the GetSaveAsFilename dialog" & vbNewLine & _
                           "The path to Save the file in arg 2 is not correct" & vbNewLine & _
                           "You didn't want to overwrite the existing PDF if it exist"
                End If
     
            End If
        Next sh
    End Sub

  4. #4
    Inactif  

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2012
    Messages
    4 903
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 68
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Janvier 2012
    Messages : 4 903
    Billets dans le blog
    36
    Par défaut
    Bonjour,

    N'utilise pas Filename comme nom de variable. C'est un nom de paramètre en VBA, et VBA doit être perdu

  5. #5
    Expert confirmé
    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

  6. #6
    Nouveau membre du Club
    Femme Profil pro
    Assistante de direction
    Inscrit en
    Janvier 2018
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 32
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Assistante de direction
    Secteur : Tourisme - Loisirs

    Informations forums :
    Inscription : Janvier 2018
    Messages : 4
    Par défaut
    Bonjour,

    Merci pour votre aide. J'ai compris et c'est tout bon !

    Cordialement,

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

Discussions similaires

  1. [XL-2013] Une macro pour enregistrer un fichier excel en pdf
    Par petchy dans le forum Excel
    Réponses: 5
    Dernier message: 29/03/2014, 12h45
  2. Réponses: 0
    Dernier message: 30/04/2013, 19h05
  3. Réponses: 1
    Dernier message: 26/04/2010, 13h44
  4. Enregistrer un fichier Excel en PDF avec Vba
    Par NEC14 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 23/01/2009, 13h44
  5. enregistrer un fichier excel en PDF
    Par elmaximoys dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 17/01/2008, 16h15

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