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

  1. #1
    Futur Membre du Club
    Enregistrer un document Word en Pdf depuis Excel
    Bonjour,

    Comme il est indiqué dans l'intitulé je cherche a enregistrer un document Word en PDF depuis excel.

    Concrètement, j'ai un Excel qui pilote un word.
    J'aimerais que la macro:
    -incrémente une valeur dans le excel qui va servir a renommer le fichier
    -ouvre le document Word
    -enregistre le word en PDF et bien entendu en permettant de définir le nom du nouveau fichier.pdf et du chemin d'enregistrement.

    Avec mon code cela marche une fois, si je relance la macro j'ai un message d'erreur .

    Voici mon 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
    25
    26
    27
    28
    29
     
    Sub Enregistrementpdf()
    Dim appWrd As Word.Application
    Dim docWord As Word.Document
     
    Dim Fichier As String, FullName As String
    Dim Folder As String
     
    Fichier = "C:\Users\Thomas\Desktop\Livraison\BON DE LIVRAISON SHELTER.docx"
    Sheets("Outils").Range("J4").Value = Sheets("Outils").Range("J4").Value + 1
     
    Sheets("Outils").Select
    Set appWrd = CreateObject("Word.Application") 'creation session Word
    appWrd.Visible = False 'pour que word reste masqué pendant l'operation
    Set docWord = appWrd.Documents.Open(Fichier)
     
    'Enregistrer le document Word
    With docWord
    Folder = "C:\Users\Thomas\Desktop\Archives\Bon de livraison N°"
    FullName = Folder & [J4] & ".Pdf"  ' Chemin + Numéro + Extention
     
    ActiveDocument.ExportAsFixedFormat OutputFileName:=FullName, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False
     
    End With
     
    docWord.Close 'fermer le document Word
    appWrd.Quit 'fermer la seesionWord
     
    End Sub

    Merci de votre aide

  2. #2
    Responsable Access

    Bonjour,

    Précisez le message d'erreur...

    Sinon ne pas mettre le ActiveDocument si c'est pour cibler le docWord.
    Dans le With : .ExportAsFixedFormat .... serait mieux, sinon le With ne sert à rien.
    Appeler ActiveDocument directement va créer un pointeur vers cet objet et empêchera la fermeture de Word.

    Vérifiez dans le gestionnaire des tâches si Word se ferme bien.
    Remettre l'application Word à Visible = True le temps de déboguer, cela permet de voir si elle se ferme correctement.

  3. #3
    Futur Membre du Club
    Bonjour Arkham46,

    Merci pour votre réponse si rapide et qui plus est juste.

    J'avais détecte qu'il y avait un souci avec la fermeture de Word la seconde fois, j'ai enlevé le "activeDocument" et tous est rentré dans l'ordre.

    Cordialement