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 :

lancer acrobat reader (toute version) depuis excel


Sujet :

Macros et VBA Excel

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 41
    Points : 33
    Points
    33
    Par défaut lancer acrobat reader (toute version) depuis excel
    Bonjour,

    Je dois ouvrir un fichier pdf par du code vba (sous excel ici).
    Ce document est protégé par mot de passe donc une fois acrobat reader lancé, il demande la saisi du mot de passe avant d'ouvrir le document (logique).

    Au début j'ai utilisé la fonction ShellExecute pour ouvrir le fichier pdf comment ça je ne suis pas obligé de spécifier le nom de l'exe à utiliser pour ouvrir le fichier pdf :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    RetVal = ShellExecute(hwnd, "Open", s_FileMenuNameFound, "", 0&, SW_Normal)
    Mais finalement, j'ai abandonné cette solution car une fois que j'ai ouvert le pdf, il faut que je prenne le focus dessus pour saisir (par code) le mot de passe du document pdf.
    Et là j'utilise la ligne de code suivante :
    AppActivate (RetVal )
    où RetVal est le code retour du ShellExecute précédent. Et ça ne fonctionne pas.


    Du coup j'utilise la fonction Shell comme ceci :

    s_FileMenuNameFound = chemin du document pdf

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    x = Shell("C:\Program Files\Adobe\Reader 9.0\Reader\AcroRD32.exe " & s_FileMenuNameFound)
     
            'send password
            AppActivate (x)
            Application.SendKeys "mot de passe à saisir", True
            Application.SendKeys "~", True
    Ce code fonctionne bien, le mot de passe est bien saisi mais ce qui m'embête c'est de devoir appeler l'exe acrobat avec Shell("C:\Program Files\Adobe\Reader 9.0\Reader\AcroRD32.exe " ...)

    ça ne fonctionnera pas si l'utilisateur n'a pas AcroRD32.exe dans c:\program files... mais dans d:\program files par exemple.

    Est-ce possible d'utiliser le Shellexecute avec AppActivate ? Si oui comment ?
    Ou sinon, comment puis-je faire pour ouvrir le fichier pdf sans spécifier le chemin de l'exe à utiliser ?

    Merci d'avance

    Boubou_s

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 41
    Points : 33
    Points
    33
    Par défaut
    En fait je lis la base de registre pour récupérer le chemin ou se trouve l'executable du acrobat reader.

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

Discussions similaires

  1. [WB14] Lancer word, excel, acrobat reader ?
    Par devdev dans le forum WebDev
    Réponses: 4
    Dernier message: 30/06/2009, 09h33
  2. Lancer Acrobat Reader en ligne de commande
    Par Rei Itchido dans le forum Windows
    Réponses: 0
    Dernier message: 22/04/2008, 10h00
  3. Lancer l'exécution d'Acrobat Reader
    Par cjacquel dans le forum Langage
    Réponses: 11
    Dernier message: 11/10/2006, 14h48

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