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 :

Impression automatique PDF avec Acrobat X


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 37
    Points : 17
    Points
    17
    Par défaut Impression automatique PDF avec Acrobat X
    Bonjour,

    Depuis la migration d'Acrobat Pro 4.0 en version 10.1.1 , mes éditions de fichier XLS au format PDF ne se fait plus.

    Lorsque le VBA s'exécute en version Acrobat 10, une fenetre (popup) nommée Creating Adobe PDF apparait me demandant un nom de fichier pour générer le fichier PDF.

    La ligne de commande utilisée en VBA est:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    If Dir(outputFilename) = "" Then
                SetPrivateProfileSetting iniFilename, 0, "Acrobat PDFWriter", "PDFFileName", outputFilename
                theDoc.PrintOut ActivePrinter:=PDFWriterName
    End If
    Y a-t-il un paramètrage dans ACROBAT ou au niveau de l'imprimante Acrobat PDF Writer ou bien une modification du code suite à la nouvelle version d'acrobat ?

    Pouvez vous m'aider sur ce problème bloquant ?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    Bonjour,

    ici : http://www.developpez.net/forums/d13...egarde-en-pdf/

    Mais tu voudrais en faire quoi du PDF?

  3. #3
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 37
    Points : 17
    Points
    17
    Par défaut
    En fait une fois le fichier PDF généré, il est copié dans un répertoire sur un serveur différent que celui qui l'a généré.

    Mais j'ai l'impression que le problème est dû à un mauvais paramètrage d'acrobat X Pro qui automatiquement me demande de saisir un nom de fichier pour pouvoir générer le fichier PDF.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    Bonjour,

    et si tu essaye ça !
    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
    Sub PdF()
     Dim pdfjob
    Dim NomExcel, NomPdf, DefaultPrinter
     
    NomExcel = ThisWorkbook.Name
    NomPdf = "Facture" & ".pdf"
    Dim sNomFichierPDF As String
     
        sNomFichierPDF = "C:\Documents and Settings\Mes documents\Fichier pdf" & "\" & NomPdf 'adapte le chemin
        'Application.ScreenUpdating = False
     
        ThisWorkbook.Sheets("feuil1").ExportAsFixedFormat Type:=xlTypePDF, Filename:=sNomFichierPDF _
            , Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
            :=False, OpenAfterPublish:=False
     End Sub
    Adapte le chemin d'accès et la feuille !

    et raconte moi !

    Cordialement,

  5. #5
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 37
    Points : 17
    Points
    17
    Par défaut
    Merci pour ton code mais l'application tourne sous EXCEL 97 et la fonction ExportAsFixedFormat n'existe pas.

    As tu une autre astuce pour contourner le problème ?

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Novembre 2007
    Messages
    473
    Détails du profil
    Informations personnelles :
    Localisation : France, Vendée (Pays de la Loire)

    Informations forums :
    Inscription : Novembre 2007
    Messages : 473
    Points : 493
    Points
    493
    Par défaut
    oui, as tu essayer avec PDFcreator? il est gratuit à installer ! Il se trouve ds tes imprimantes bien-sure après installation!

    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
    Option Explicit
     
    Sub testPDF()
    Sheets("Feuil1").Select
      Application.ActivePrinter = "PDFCreator sur Ne00:"
        ActiveWindow.SelectedSheets.PrintOut Copies:=1, ActivePrinter:= _
            "PDFCreator sur Ne00:", Collate:=True
     
    End Sub
    Sub testPDF2()
     Dim pdfjob
    Dim NomExcel, NomPdf, DefaultPrinter
     Set pdfjob = CreateObject("PDFCreator.clsPDFCreator")
    NomExcel = ThisWorkbook.Name
    NomPdf = "Facture" & ".pdf"
    With pdfjob
    If .cStart("/NoProcessingAtStartup") = False Then
    MsgBox "Impossible d'initialiser PDFCreator.", vbCritical + vbOKOnly, "PrtPDFCreator"
    Exit Sub
    End If
    .cOption("UseAutosave") = 1
    .cOption("UseAutisaveDirectory") = 1
    .cOption("AutosaveDirectory") = ThisWorkbook.Path ' chemin enregistrement du classeur actuel
    .cOption("AutosaveFilename") = NomPdf
    .cOption("AutosaveFormat") = 0
    .cClearCache
    End With
     
    'ThisWorkbook.PrintOut Copies:=1, ActivePrinter:="PDFCreator" 'imprime le classeur entier
    ThisWorkbook.Sheets("Feuil1").PrintOut Copies:=1, ActivePrinter:="PDFCreator" 'imprime l'onglet pour mise en page définir la partie à imprimer
    'Selection.PrintOut Copies:=1, ActivePrinter:="PDFCreator" 'imprime la selection
     
    Do Until pdfjob.cCountOfPrintjobs = 1
    DoEvents
    Loop
    pdfjob.cPrinterStop = False
    Do Until pdfjob.cCountOfPrintjobs = 0
    DoEvents
    Loop
    With pdfjob
    .cDefaultPrinter = DefaultPrinter
    .cClearCache
    .cClose
    End With
     
    End Sub
    Pour le test 2 le fichier s'enregistre dans le chemin de ton classeur! Mais tu pourras modifier cette action selon ton choix!

  7. #7
    Membre à l'essai
    Inscrit en
    Janvier 2006
    Messages
    37
    Détails du profil
    Informations forums :
    Inscription : Janvier 2006
    Messages : 37
    Points : 17
    Points
    17
    Par défaut
    Je vais tester, et te fais un retour demain.

Discussions similaires

  1. [WD-2007] Publipostage : Impression en PDF avec une page par fichier
    Par nesumi dans le forum Word
    Réponses: 30
    Dernier message: 23/11/2020, 18h36
  2. Ouvir et envoyer plusieur PDF avec Acrobat.
    Par LeGnome12 dans le forum Performance Web
    Réponses: 0
    Dernier message: 12/09/2011, 16h17
  3. [AC-2003] transformer un état en pdf avec acrobat 7 pro
    Par Reloadx dans le forum IHM
    Réponses: 3
    Dernier message: 12/06/2009, 13h19
  4. [AC-2007] Création de PDF avec acrobat 8 Pro
    Par TanKer dans le forum VBA Access
    Réponses: 1
    Dernier message: 30/04/2009, 14h37

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