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 Discussion :

Ouverture d'un fichier PDF à une page précise en version reader 11.0


Sujet :

VBA

  1. #1
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2
    Points : 3
    Points
    3
    Par défaut Ouverture d'un fichier PDF à une page précise en version reader 11.0
    Bonjour à tous

    utilisant une version adobe 10 j'ai récupéré le code suivant pour ouvrir un fichier PDF et cela fonctionnait parfaitement.

    En installant mon fichier excel avec une version adobe 11.0, Adobe s'ouvre bien mais j'ai un message d'erreur "Fichier Introuvable".

    En regardant sur le Web il semblerait que les codes en version 11 ne correspondent plus avec une version 10.

    Quelqu'un peut il m'aider

    Merci d'avance

    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
    Private Sub Label100_Click()
    '---- Déclaration des var
    Dim WshShell As Object, PDFExec As Object
    Dim CheminReader As String, CheminPDF As String
    Dim numPage As String
    '---- Indiquer le Numéro de page à rechercher
        numPage = 1
    '---- Ouverture du fichier PDF
        CheminReader = Feuil7.Cells(1, 20) ' c:\program files (X86)\Adobe\Reader 10.0\Reader\acroRd32.exe  modifier Reader 11.0
        CheminPDF = Feuil7.Cells(2, 20) ' c:\gestion MVT\Gestion des Mouvements manuel utilisateur.pdf
        Set WshShell = CreateObject("WScript.Shell")
        Set PDFExec = WshShell.Exec(CheminReader & " /a page=" & numPage & "=OpenActions " & CheminPDF) ' fonctionne avec version 10 mais pas en V11 
        Set PDFExec = Nothing
        Set WshShell = Nothing
    End Sub

  2. #2
    Expert éminent sénior
    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
    Points : 11 274
    Points
    11 274
    Par défaut
    Salut, pour W7 et le Reader 11 : "C:\Program Files (x86)\Adobe\Reader 11.0\Reader\AcroRd32.exe"

    Sinon via la base de registre : voir ici.

  3. #3
    Candidat au Club
    Homme Profil pro
    Retraité
    Inscrit en
    Avril 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Avril 2013
    Messages : 2
    Points : 3
    Points
    3
    Par défaut
    Merci KyKy 29

    pour avoir pris le temps de répondre.

    Mais!!!! le problème n'est pas le chemin d'accès pour Reader, car il ouvre correctement Adobe , (voir commentaire sur ma ligne prog) mais l'ouverture du fichier PDF ou adobe affiche ' Msg Fichier introuvable'.

    Je vais essayé d'autre solution.

    Donc problème toujours en attente de résolution

  4. #4
    Expert éminent sénior
    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
    Points : 11 274
    Points
    11 274
    Par défaut
    Re, à quoi ressemble la chaine dans
    CheminPDF = Feuil7.Cells(2, 20)
    ?

  5. #5
    Expert éminent sénior
    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
    Points : 11 274
    Points
    11 274
    Par défaut
    Re, que donne ceci ?
    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
    47
    48
    49
    Option Explicit
     
    Sub SelectionFichier()
    Dim Fichier As Variant
        ChDir ThisWorkbook.Path & "\"
     
        Fichier = Application.GetOpenFilename("Fichier PDF (*.pdf), *.pdf")
        If Fichier <> False Then OuvrirPDF Fichier, 3 'Feuil1.Range("NumPage")
     
    End Sub
     
    Private Sub OuvrirPDF(ByVal sFichier As String, iNumPage As Long)
    Dim WshShell As Object
    Dim sCheminReader As String
        sCheminReader = LocaliserAcroReader
     
        If ExistenceFichier(sCheminReader) = False Then
            MsgBox "Le chemin d'Acrobat Reader est erroné ou" & vbCrLf & "Acrobat Reader n'est pas installé"
            Exit Sub
        End If
     
        Set WshShell = CreateObject("WScript.Shell")
        WshShell.Exec sCheminReader & " /a page=" & iNumPage & "=OpenActions " & sFichier
        Set WshShell = Nothing
    End Sub
     
    Private Function LocaliserAcroReader() As String
    Dim FSO As Object
    Dim Wsh As Object
    Dim sCheminReader As String
     
        Set FSO = CreateObject("Scripting.FileSystemObject")
        Set Wsh = CreateObject("WScript.Shell")
     
        sCheminReader = Wsh.RegRead("HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\AcroRd32.exe\")
     
        If Not IsNull(FSO.GetAbsolutePathName(sCheminReader)) Then
            LocaliserAcroReader = FSO.GetAbsolutePathName(sCheminReader)
        Else
            LocaliserAcroReader = ""
        End If
     
        Set Wsh = Nothing
        Set FSO = Nothing
    End Function
     
    Private Function ExistenceFichier(sFichier As String) As Boolean
        ExistenceFichier = Dir$(sFichier) <> ""
    End Function

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

Discussions similaires

  1. [VBA] Ouverture d'un fichier PDF à une page précise
    Par jambon_beurre dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 12/09/2013, 13h32
  2. [XL-2003] Ouvrir un pdf à une page précise depuis une base documentaire sur serveur
    Par vergezzois dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 18/02/2013, 18h59
  3. [XL-2003] Ouvrir un fichier pdf à une page précise
    Par dlight dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 19/02/2011, 16h43
  4. ouverture PDF a une page précise!
    Par cyberloux dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 05/12/2010, 17h59
  5. Ouverture d'un PDF sur une page précise fonctionne de façon aléatoire
    Par cahnory dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 31/08/2009, 09h51

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