Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VBA - ouvrir .pdf depuis Word 2002

4 réponses
Avatar
Congelator
Salut à toutes et à tous,
Mon problème est le suivant :
J'ai une usrfrm avec des option_button. Lorsque l'utilisateur clique sur un
de ceux-ci (optbt_xyz) et valide son choix en cliquant sur le bouton
"continuer", comment faire pour aller ouvrir un document pdf dans un
répertoire donné (C:\xyz.pdf) ?
Si quelqu'un a une idée, ça m'intéresse.
Merci d'avance.
--
Céd / Lausanne

4 réponses

Avatar
Picalausa François
"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
Salut à toutes et à tous,
Mon problème est le suivant :
J'ai une usrfrm avec des option_button. Lorsque l'utilisateur clique sur
un
de ceux-ci (optbt_xyz) et valide son choix en cliquant sur le bouton
"continuer", comment faire pour aller ouvrir un document pdf dans un
répertoire donné (C:xyz.pdf) ?
Si quelqu'un a une idée, ça m'intéresse.
Merci d'avance.
--
Céd / Lausanne



Hello,

Tu peux employer l'api ShellExecute comme montré dans cette fiche de la faq
http://faq.vb.free.fr/index.php?question=8

--
Picalausa François
Avatar
Congelator
Salut François,
Merci pour l'info mais j'avais déjà essayé sans succès. Je m'y prends
peut-être mal... J'ai copié

Private Const SW_SHOWNORMAL = 1
et
Private Declare Function ShellExecute Lib "shell32.dll" ... dans "Général -
Déclaration" de ma usrfrm mais à chaque fois ça plante sur ".hwnd" de
ShellExecute Me.hwnd. Est-ce que ça vient du fait que ce code est pour VB et
que j'utilise VBA...??? (comme je suis pomme en VBA... je rame !)

--
Céd / Lausanne


"Picalausa François" a écrit :

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
> Salut à toutes et à tous,
> Mon problème est le suivant :
> J'ai une usrfrm avec des option_button. Lorsque l'utilisateur clique sur
> un
> de ceux-ci (optbt_xyz) et valide son choix en cliquant sur le bouton
> "continuer", comment faire pour aller ouvrir un document pdf dans un
> répertoire donné (C:xyz.pdf) ?
> Si quelqu'un a une idée, ça m'intéresse.
> Merci d'avance.
> --
> Céd / Lausanne

Hello,

Tu peux employer l'api ShellExecute comme montré dans cette fiche de la faq
http://faq.vb.free.fr/index.php?question=8

--
Picalausa François





Avatar
Picalausa François
Hello,

Tout à fait.
Les Userform ne donnent pas accès à l'hWnd qui leur est associé. Dans ce
cas, tu peux passer 0 comme hwnd à l'API:
ShellExecute 0, "open", "C:WindowsFile.txt", vbNullString,
"C:Windows", SW_SHOWNORMAL
Le seul "problème" est que si des messagebox doivent être affichées (erreur
lors de l'exécution de l'API), elles n'auront pas de parent...

--
Picalausa François

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
Salut François,
Déclaration" de ma usrfrm mais à chaque fois ça plante sur ".hwnd" de
ShellExecute Me.hwnd. Est-ce que ça vient du fait que ce code est pour VB
et
que j'utilise VBA...??? (comme je suis pomme en VBA... je rame !)

"Picalausa François" a écrit :

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message
de
news:
Salut à toutes et à tous,
[...]
comment faire pour aller ouvrir un document pdf dans un
répertoire donné (C:xyz.pdf) ?
[...]


Tu peux employer l'api ShellExecute comme montré dans cette fiche de la
faq
http://faq.vb.free.fr/index.php?question=8




Avatar
Congelator
BINGO !! Merci pour le coup de main ça fonctionne enfin...
Au cas où d'autres en auraient besoin, voici le code, mais qu'on ne me
demande pas d'expliquer comment ça marche...:-))

Dans "Général - Déclaration" de la usrfrm
Private Const SW_SHOWNORMAL = 1
Private 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

Dans le bouton
ShellExecute 0, "open", "C:Modelesdocument.pdf", vbNullString,
"C:Modeles", SW_SHOWNORMAL

Encore merci François !
--
Céd / Lausanne


"Picalausa François" a écrit :

Hello,

Tout à fait.
Les Userform ne donnent pas accès à l'hWnd qui leur est associé. Dans ce
cas, tu peux passer 0 comme hwnd à l'API:
ShellExecute 0, "open", "C:WindowsFile.txt", vbNullString,
"C:Windows", SW_SHOWNORMAL
Le seul "problème" est que si des messagebox doivent être affichées (erreur
lors de l'exécution de l'API), elles n'auront pas de parent...

--
Picalausa François

"Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message de
news:
> Salut François,
> Déclaration" de ma usrfrm mais à chaque fois ça plante sur ".hwnd" de
> ShellExecute Me.hwnd. Est-ce que ça vient du fait que ce code est pour VB
> et
> que j'utilise VBA...??? (comme je suis pomme en VBA... je rame !)
>
> "Picalausa François" a écrit :
>
>> "Congelator" <congelator(a_effacer)@hotmail.com> a écrit dans le message
>> de
>> news:
>>> Salut à toutes et à tous,
>>> [...]
>>> comment faire pour aller ouvrir un document pdf dans un
>>> répertoire donné (C:xyz.pdf) ?
>>> [...]
>> Tu peux employer l'api ShellExecute comme montré dans cette fiche de la
>> faq
>> http://faq.vb.free.fr/index.php?question=8