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

VBA Access Discussion :

Imprimer directement un document PDF - La solution de la FAQ est-elle obsolète avec Access 2016 ?


Sujet :

VBA Access

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 62
    Par défaut Imprimer directement un document PDF - La solution de la FAQ est-elle obsolète avec Access 2016 ?
    Bonjour, bonsoir,

    Je dois imprimer des documents au format PDF placés sur C:\ en fonction de certains critères mais malgré toutes mes longues recherches et essais, je n'ai pas trouvé de solution pour imprimer directement un Pdf.

    Est-ce que la FAQ sur ce sujet est obsolète sur Access 2016 ?
    https://access.developpez.com/faq/?p...vers#Print_doc

    Je sais transformer un Etat au format PDF et l'envoyer par mail ou l'imprimer, mais piocher dans une liste de pdf déjà existants, non.
    ShellExecute (avec pdf creator installé) provoque une erreur et les autres solutions que j'ai trouvé ne déclenchent rien.

    Est-ce que la version 2019 offre une solution native ?

    Merci par avance pour votre aide si vous avez une idée fonctionnelle, ce serait une (très) grosse épine en moins.

  2. #2
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 62
    Par défaut
    Un point sur ma recherche.
    j'ai trouvé une ligne de code dans un forum anglo-saxon qui permet d'ouvrir l'application liée par défaut (test avec pdf creator, acrobat reader ou foxkit) mais qui ouvre une fenêtre de l'app (imprimer dans un document pdf... ou je peux enregistrer mais pas imprimer et encore moins en mode invisible)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    CreateObject("Shell.Application").Namespace(0).ParseName("c:\mypdf1.pdf").InvokeVerb ("Print")
    donc rien de mieux mais un début d'interaction.

    https://answers.microsoft.com/en-us/...9b31bf5?page=2

  3. #3
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 62
    Par défaut
    Edit :
    le code précédent fonctionne à condition de correctement configurer le logiciel utilisé (Acrobat reader par exemple) pour qu'il imprime directement et ne cherche pas à enregistrer le fichier ailleurs.
    Si toutefois vous avez une solution plus efficace (j'ai plusieurs centaines de documents à imprimer en cas de forte charge), je suis preneur.
    Il ne me reste plus qu'à regarder comment fermer en vba acrobat reader une fois les impressions envoyées dans le spooler de l'imprimante.
    En espérant que cette solution puisse servir à d'autres....
    ++

  4. #4
    Invité
    Invité(e)
    Par défaut
    bonsoir,

    une autre solution possible avec sumatrapdf en ligne de commande, voir 'printing options' : https://www.sumatrapdfreader.org/doc...arguments.html

  5. #5
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 62
    Par défaut
    Citation Envoyé par galoir Voir le message
    bonsoir,

    une autre solution possible avec sumatrapdf en ligne de commande, voir 'printing options' : https://www.sumatrapdfreader.org/doc...arguments.html
    Merci beaucoup, je ne connais pas, ça m'a l'air très bien, je testerai demain, il est déjà bien tard.

  6. #6
    Membre confirmé
    Inscrit en
    Octobre 2006
    Messages
    62
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 62
    Par défaut
    Citation Envoyé par galoir Voir le message
    bonsoir,

    une autre solution possible avec sumatrapdf en ligne de commande, voir 'printing options' : https://www.sumatrapdfreader.org/doc...arguments.html
    Merci infiment, solution très pertinente.

    Je suis passé par les modules du site https://christianspecht.de/2013/09/2...nd-sumatrapdf/ qui documente et exploite ce logiciel qui semble être peu connu.

    Il faut aussi utiliser sa collection vba helpers (3 modules) pour que le module spécifique à sumatrapdf fonctionne..
    https://christianspecht.de/vba-helpers/

    Ensuite une simple ligne
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    PrintPdfFile "c:\test.pdf"
    lié à un bouton suffit pour lancer l'impression du PDF.

    Je ne vous cache pas que j'y ai passé un peu de temps compte tenu de mon faible niveau, mais le résultat est satisfaisant.

    Merci !

  7. #7
    Invité
    Invité(e)
    Par défaut
    Bonjour,

    j'aime bien ce type de programme (sumatrapdf, pdftk,...) :
    -> Travaille en ligne de commande
    -> Léger
    -> Aucun problème pour le déploiement car pas de processus d'installation...
    -> Pas besoin de le référencer dans l'appli
    -> version gratuite

    a+

Discussions similaires

  1. Imprimer des documents pdf
    Par omen999 dans le forum Vos Contributions VBScript
    Réponses: 0
    Dernier message: 16/07/2008, 16h20
  2. [C#]Imprimer un document PDF
    Par Mictou dans le forum Windows Forms
    Réponses: 2
    Dernier message: 02/12/2007, 16h48
  3. Réponses: 2
    Dernier message: 03/11/2007, 14h08
  4. [VB6] Imprimer un document PDF
    Par Mat_76 dans le forum VB 6 et antérieur
    Réponses: 11
    Dernier message: 10/07/2007, 08h46
  5. imprimer des documents pdf ou images
    Par Invité dans le forum Access
    Réponses: 4
    Dernier message: 21/01/2007, 17h19

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