OVH Cloud OVH Cloud

afficher un pdf

3 réponses
Avatar
Jacques
Bonjour,

Je voudrais pouvoir ouvrir un fichier pdf à partir d'une macro.
Pour Word et Excel pas de problème mais comment faire pour acrobatReader ?

Merci d'avance
Jacques

3 réponses

Avatar
François Rivierre
Bonjour,

Je voudrais pouvoir ouvrir un fichier pdf à partir d'une macro.
Pour Word et Excel pas de problème mais comment faire pour
acrobatReader ?


Il faut utiliser une fonction du shell de Windows. Elle permet d'ailleurs
d'ouvrir tous les types de fichiers dont l'association est correctement
faite.

' 8< === début du code à recopier dans un module

Const SW_SHOW = 1
Const SW_SHOWMAXIMIZED = 3

Public 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

Sub OuvrirPDF()
Dim RetVal As Long
On Error Resume Next
RetVal = ShellExecute(0, "open", "c:monfichier.pdf", "", _
"", SW_SHOWMAXIMIZED)
End Sub

' 8< === fin du code à recopier dans un module

Il suffit ensuite d'affecter la macro OuvrirPDF à un bouton, après avoir
préalablement
remplacer le chemin complet du fichier que j'ai mis dans l'exemple, bien
sûr.
Evidemment, pour que ça fonctionne, Acrobat Reader doit être correctement
installé.

Ce code n'est pas de moi, je l'avais trouvé il y a quelque temps sur
internet.

En espérant que ça aide,

Cordialement,

François Rivierre

Avatar
Jacques
J'ai une erreur de compilation lorsque je lance la macro.

A quoi c'est du ?



"François Rivierre" a écrit dans le message de news:
%
Bonjour,

Je voudrais pouvoir ouvrir un fichier pdf à partir d'une macro.
Pour Word et Excel pas de problème mais comment faire pour
acrobatReader ?


Il faut utiliser une fonction du shell de Windows. Elle permet d'ailleurs
d'ouvrir tous les types de fichiers dont l'association est correctement
faite.

' 8< === début du code à recopier dans un module

Const SW_SHOW = 1
Const SW_SHOWMAXIMIZED = 3

Public 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

Sub OuvrirPDF()
Dim RetVal As Long
On Error Resume Next
RetVal = ShellExecute(0, "open", "c:monfichier.pdf", "", _
"", SW_SHOWMAXIMIZED)
End Sub

' 8< === fin du code à recopier dans un module

Il suffit ensuite d'affecter la macro OuvrirPDF à un bouton, après avoir
préalablement
remplacer le chemin complet du fichier que j'ai mis dans l'exemple, bien
sûr.
Evidemment, pour que ça fonctionne, Acrobat Reader doit être correctement
installé.

Ce code n'est pas de moi, je l'avais trouvé il y a quelque temps sur
internet.

En espérant que ça aide,

Cordialement,

François Rivierre





Avatar
François Rivierre
Bonjour,

J'ai une erreur de compilation lorsque je lance la macro.

A quoi c'est du ?


Que dis le message d'erreur exactement ?

Cordialement,

François Rivierre