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 :

Visualisation d'un fichier PDF dans une UserForm [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné
    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
    Par défaut Visualisation d'un fichier PDF dans une UserForm
    Bonjour le Forum

    J'utilise un code depuis un petit moment de Kiki29 qui fonctionnait parfaitement :
    http://www.developpez.net/forums/d43...r/#post6649828

    , mais depuis la mise à jour d'acrobat reader en acrobat reader DC que je refusait pour que mon fichier continu de fonctionner! Mais malheureusement la mise à jour s'est faite.

    Alors existe t il une solution pour les lires?

  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, bestialement qqch comme ceci ( améliorable )

    ● Dans un module VBA standard
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Option Explicit
     
    Public Fichier As Variant
     
    Sub SelectPDF()
        ChDir ThisWorkbook.Path & "\"
        Fichier = Application.GetOpenFilename("Fichier PDF (*.pdf), *.pdf")
        If Fichier <> False Then UserForm1.Show
    End Sub
    ● Affecter un bouton à la procédure SelectPDF

    ● Dans une UserForm via un contrôle Microsoft WebBrowser
    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
    Option Explicit
     
    Private Sub UserForm_Initialize()
        With UserForm1
            .Height = 600
            .Width = 600
        End With
        With WebBrowser1
            .Left = 5
            .Top = 5
            .Width = UserForm1.Width - 10
            .Height = UserForm1.Height - 35
        End With
        WebBrowser1.Navigate Fichier
    End Sub
    Images attachées Images attachées  

  3. #3
    Membre chevronné
    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
    Par défaut
    Salut Kiki,

    Je constate que tu es toujours efficace et surtout très précis. Je t'en félicite et te remercie, j’aurais voulu pouvoir gérer le zoom, mais je ne vois pas trop comment?

    En tout cas merci !

  4. #4
    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, tu remplaces
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WebBrowser1.Navigate Fichier
    par qqch comme ceci pour un zoom de 250 % sur la 3eme page
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WebBrowser1.Navigate Fichier & "#zoom=250&page=3"
    Sinon normalement une barre d'outils apparait fugitivement où le zoom +/- est dispo.

    Pour info j'ai rajouté la même chose sur une UserForm vierge ici.
    Images attachées Images attachées   

  5. #5
    Membre chevronné
    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
    Par défaut
    Salut Kiki

    Merci encore pour ta réponse!
    Le but est que ce fichier est utilisé sur plusieurs ordi avec des écrans différents et des utilisateurs différents. Et comme il faut visualiser plusieurs Pdf je voulais que chacun puisse adapter à sa volonté, j'ai donc mis un textbox avec un spid button et chacun adapte son zoom, de ce fait chaque pdf sera affiché au zoom demandé:
    Donc mon textbox se nommant coef, j'ai créer une variable ZoomPdf et voici
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ZoomPdf = "#" & "zoom=" & UserVisuScan.Coef & "&page=3"""
        UserVisuScan.WebBrowser1.Navigate Chemins & ZoomPdf
    ça fonctionne parfaitement!!

    Seul petit bémol, j'aurais voulu que le pdf déjà ouverts se ré affiche avec le nouveaux zoom, mais le fait que mon "chemins" ne change pas, si je relance
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
        UserVisuScan.WebBrowser1.Navigate Chemins & ZoomPdf
    le pdf disparaît, je dois donc ré-afficher un nvx pdf donc un chemin différents et le zoom choisi est alors actif. Il faudrait peut-être vider le webbrowser, mais même en plaçant ceci devant ma procédure: WebBrowser1.Navigate ("about:blank") , ça ne change rien!

    en tout cas merci mille fois!

  6. #6
    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, il faudrait peut-être utiliser un WebBrowser1.Refresh ?

    sinon il y a aussi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    WebBrowser1.Navigate Fichier & "#zoom=250%&page=3&toolbar"
    Images attachées Images attachées  

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

Discussions similaires

  1. [VB.Net] afficher un fichier pdf dans une page WEB
    Par kasaw dans le forum ASP.NET
    Réponses: 3
    Dernier message: 25/08/2008, 16h02
  2. Réponses: 2
    Dernier message: 06/12/2006, 12h14
  3. [HTML] Ouvrir plusieurs fichiers pdf dans une page
    Par PrinceMaster77 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 05/05/2006, 09h34
  4. [C#] Ouvrir un fichier PDF dans une autre fenetre
    Par ZePostman dans le forum ASP.NET
    Réponses: 3
    Dernier message: 15/03/2006, 13h41
  5. [MySQL]Inserer fichier pdf dans une table
    Par perlgirl dans le forum Langage SQL
    Réponses: 2
    Dernier message: 29/11/2005, 16h08

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