Ouvir un fichier PDF

Résolu/Fermé
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016 - 17 juin 2013 à 17:43
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016 - 18 juin 2013 à 20:36
Bonjour à tous

j'essaie d'ouvrir un fichier pdf avec un code récupéré sur ce site, mais la fonction shellExecute ne marche pas. J'ai cru comprendre qu'il fallait la déclarer dans un module, mais comment.
Merci pour votre aide
A voir également:

13 réponses

f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
17 juin 2013 à 19:04
Bonjour,

Excel, access, ou ...... ?????
0
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016
17 juin 2013 à 19:15
Access 2010
0
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016
17 juin 2013 à 19:25
Bonjour

j'utilise access 2010
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
17 juin 2013 à 19:37
Re,

Ouvrir la fenetre VBA de votre fichier access, placez le curseur souris dans la fenetre projet (en haut a gauche), click droit souris, insertion, module et mettez votre declaration d'API shellexecute
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016
17 juin 2013 à 19:44
Merci pour cette information, mais qu elle code je doit entré
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
17 juin 2013 à 19:55
Re,

Dans le code que vous avez recupere, il y a une declaration d'API shellexecute et surement un exemple d'ouverture de fichier.
API:
Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long

ligne de code pour ouvrir le fichier, dans le code formulaire:
ex:
Private Sub Commande7_Click
hwndSim = ShellExecute(0&, "open", Application.Currentproject.Path & "\nom du fichier", "", Application.Currentproject.Path, 1)
end sub
0
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016
17 juin 2013 à 20:41
Voici mon code mais lorsque je clique sur le bouton rien ne ce pas

Private Sub C194_Click()


Dim Chemin, Fichier, Absolu As String

Absolu = "C:\Users\Christian\Documents\Documents ScanSoft\1 Christian\2013\05"

Fichier = "10513001"
'On ne continue que si un fichier a été sélectionné.
If Fichier <> "" Then

'Association des chemins absolu et relatif pour obtenir le chemin complet vers le fichier.
Chemin = Absolu & Fichier & ".pdf"

'Execution du fichier situé à l'emplacement "Chemin" avec son programme par défaut.
ShellExecute Me.hWnd, vbNullString, Chemin, "", vbNullString, 1

Else
MsgBox "Aucun fichier sélectionné"
End If


End Sub
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
18 juin 2013 à 08:38
Bonjour,

Faut pas melanger!!!

Private Sub C194_Click()

    Dim Chemin, Fichier, Absolu As String

    Absolu = "C:\Users\Christian\Documents\Documents ScanSoft\1 Christian\2013\05\"

    Fichier = "10513001"
    
    'On ne continue que si un fichier a été sélectionné.
    If Fichier <> "" Then

        'Association des chemins absolu et relatif pour obtenir le chemin complet vers le fichier.
        Chemin = Absolu & Fichier & ".pdf"

        'Execution du fichier situé à l'emplacement "Chemin" avec son programme par défaut.
        
        'Declare Function ShellExecuteForExplore Lib "shell32.dll" Alias "ShellExecuteA" _
        (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, lpParameters As Any, _
        lpDirectory As Any, ByVal nShowCmd As Long) As Long
        ' va avec:
        'hwndSim = ShellExecuteForExplore(0&, vbNullString, Chemin, 0, 0, 1)
        '-------------------------------------------------------------------
        '-------------------------------------------------------------------
        'Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
        (ByVal hWnd As Long, ByVal lpOperation As String, ByVal lpFile As String, _
         ByVal lpParameters As String, ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
        ' va avec:
        hwndSim = ShellExecute(0&, "open", Chemin, "", Chemin, 1)
    Else
        MsgBox "Aucun fichier sélectionné"
    End If


End Sub


A+
0
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016
18 juin 2013 à 15:58
Un grand merci pour cette aide si précieuse. Maintenant le code marche parfaitement. Pourtant, une dernière petite question, est-il possible de faire la recherche dans tous les sous répertoires de "Documents ScanSoft"
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
18 juin 2013 à 16:38
Re,

quel est le but de la recherche ??
0
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016
18 juin 2013 à 16:55
Les documents que je veux ouvrir, sont des factures qui sont rangées dans différents sous répertoires du répertoire "Documents ScanSoft"

Dim Chemin, Fichier, Absolu, hwndSim As String

Absolu = "C:\Users\Christian\Documents\Documents ScanSoft\1 Christian\2013\05\"

Fichier = [Forms]![Sav recherche]![sfmRecherche].[Form]![N°Facture]

'On ne continue que si un fichier a été sélectionné.

If Fichier <> "" Then

'Association des chemins absolu et relatif pour obtenir le chemin complet vers le fichier.
Chemin = Absolu & Fichier & ".pdf"

'Execution du fichier situé à l'emplacement "Chemin" avec son programme par défaut.

hwndSim = ShellExecuteForExplore(0&, vbNullString, Chemin, 0, 0, 1)

Else

MsgBox "Aucun fichier sélectionné"

End If
0
f894009 Messages postés 17189 Date d'inscription dimanche 25 novembre 2007 Statut Membre Dernière intervention 6 mai 2024 1 705
18 juin 2013 à 17:40
Re,

Choix sous repertoires:

Sub test1()
    Dim Chemin, Fichier, Absolu, hwndSim As String

    Absolu = "C:\Users\Christian\Documents\Documents ScanSoft\"
    Fichier = [Forms]![Sav recherche]![sfmRecherche].[Form]![N°Facture]
    'On ne continue que si un fichier a été sélectionné.
    If Fichier <> "" Then
        'choix sous-sous repertoire
        Set oShell = CreateObject("Shell.Application")
        Set oFolder = oShell.BrowseForFolder(&H0&, "Choisir un répertoire", &H1&, Absolu)
        If oFolder Is Nothing Then
            MsgBox "Abandon opérateur", vbCritical
        Else
            'Association des chemins absolu et relatif pour obtenir le chemin complet vers le fichier.
            Set oFolderItem = oFolder.Self
            Chemin = oFolderItem.Path & "\" & Fichier & ".pdf"
            'Execution du fichier situé à l'emplacement "Chemin" avec son programme par défaut.
            hwndSim = ShellExecuteForExplore(0&, vbNullString, Chemin, 0, 0, 1)
        End If
    Else
        MsgBox "Aucun fichier sélectionné"
    End If
End Sub


A+
0
ddh74 Messages postés 30 Date d'inscription lundi 17 juin 2013 Statut Membre Dernière intervention 30 novembre 2016
18 juin 2013 à 20:36
Un grand merci pour toute cette aide
0