Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Imprimer un PDF depuis Excel

414 views
Skip to first unread message

f f

unread,
Jun 2, 2010, 11:06:35 AM6/2/10
to
Bonjour,

Comment, depuis Excel lancer l'impression d'un document pdf situé dans
un répertoire clairement identifié

par exemple : fichier à imprimer :
I:\Métré\Projets Autocad\z Divers\PPSPS\pdf\Ppsps - cinématique sur
banches Complet.pdf
(avec les espaces et accents....)

Ce que je voudrais c'est proposer à mes utilisateurs, une liste de
bouton proposant des fichiers pdf à imprimer pour illustrer leurs
documents.

Est-ce possible,
quel serait le code VBA pour le faire ?


d'avance, je vous remercie

f f

unread,
Jun 2, 2010, 11:48:02 AM6/2/10
to

f f

unread,
Jun 2, 2010, 11:48:08 AM6/2/10
to

isabelle

unread,
Jun 3, 2010, 12:17:45 AM6/3/10
to
bonjour ff,

peut tu mettre une exemple de tes donn�es sur ci-joint ?

isabelle

Le 2010-06-02 11:48, f f a �crit :
> Bonjour,
>
> Comment, depuis Excel lancer l'impression d'un document pdf situ� dans
> un r�pertoire clairement identifi�
>
> par exemple : fichier � imprimer :
> I:\M�tr�\Projets Autocad\z Divers\PPSPS\pdf\Ppsps - cin�matique sur


> banches Complet.pdf
> (avec les espaces et accents....)
>

> Ce que je voudrais c'est proposer � mes utilisateurs, une liste de
> bouton proposant des fichiers pdf � imprimer pour illustrer leurs

FFO

unread,
Jun 3, 2010, 1:54:57 AM6/3/10
to
Salut à toi

J'ai ce code qui devrait fonctionner :

rep = Shell("""C:\Program Files\Adobe\Acrobat 8.0\Reader\AcroRd32.exe""

""I:\Métré\Projets Autocad\z Divers\PPSPS\pdf\Ppsps - cinématique sur banches

Complet.pdf""", vbMaximizedFocus)
‘Après avoir ouvert le document
Application.Wait Now + TimeValue("00:00:04")
SendKeys "^{p}", True
Application.Wait Now + TimeValue("00:00:02")
Application.SendKeys ("^;{ENTREE}")
Application.Wait Now + TimeValue("00:00:02")
SendKeys "^{q}", True

Fais des essais et dis moi !!!!!

f f

unread,
Jun 3, 2010, 2:56:40 AM6/3/10
to

Merci
j'ai testé, mais il semble que les série de guillemets posent
problème....
(la ligne passe en rouge et vba me dit qu'il attend un séparateur de
liste....)


Enfin ca fonctionne pas des masses, mais je cherche....

f f

unread,
Jun 3, 2010, 3:25:35 AM6/3/10
to
J'ai trouvé

En fait il fallait encadrer les commandes shell de la bonne façon, à
savoir :
Shell """C:\Program Files\Windows Media Player\wmplayer.exe"" ""E:
\chemin\fichier video.avi""", vbMaximizedFocus

FFO

unread,
Jun 3, 2010, 3:51:21 AM6/3/10
to
Rebonjour à toi

Vérifies d'abord la partie :

C:\Program Files\Adobe\Acrobat 8.0\Reader\AcroRd32.exe

qui est le chemin du répertoire dans lequel se trouve l'application Acrobat
reader

De mème le nom de cette application : AcroRd32.exe

adaptes cette ligne en fonction de ta configuration

Puis effectivement vois le côté guillemet qui peux varier d'un environnement
à l'autre

Tiens moi informé !!!!!!

FFO

unread,
Jun 3, 2010, 4:29:25 AM6/3/10
to
Rebonjour à toi

Une autre piste

Essaies de voir l'espace entre ces guillemets :

AcroRd32.exe"" ""I:\Métré\Projets Autocad\z Divers\PPSPS\pdf\Ppsps

et de le mettre sans ainsi :

AcroRd32.exe""""I:\Métré\Projets Autocad\z Divers\PPSPS\pdf\Pp

Peut être du mieux

Dis moi !!!!!

f f

unread,
Jun 3, 2010, 8:15:54 AM6/3/10
to
Salut

Voilà ca marche

J'ai effectivement adapté la partie où Excel devait aller chercher
l'exécutable de adobe (vu que j'ai acrobat 9 et windows 7)
Ensuite, il fallait effectivement faire gaffe au nombre de
guillemets..

Maintenant tout fonctionne.


FFO

unread,
Jun 3, 2010, 9:47:23 AM6/3/10
to
Rebonjour à toi

Merci de ton retour et heureux que tu es réussi

A bientôt peut être

"f f" wrote:

> .
>

f f

unread,
Jun 3, 2010, 10:30:52 AM6/3/10
to
Ben justement, me revoici..

Comment pourrais-je commander à Excel l'impression d'un fichier JPG ??
(en fait je ne veux pas insérer le-dit JPG dans mon fichier excel, car
cela risque de le faire exploser...)

isabelle

unread,
Jun 3, 2010, 10:47:09 AM6/3/10
to
bonjour ff,

tu pourrais le mettre dans un control Image, de la Boite à outils Controls

isabelle

Modeste

unread,
Jun 3, 2010, 10:49:46 AM6/3/10
to
Bonsour®

"f f" <fredo...@gmail.com> a écrit dans le message de groupe de
discussion :
d9abcf23-7c47-4c7c...@o1g2000vbe.googlegroups.com...

il faut utiliser l'API ShellExecute
dans ce cas c'est Windows qui se charge d'utiliser le programme de defaut
lie a l'extension du fichier concerne

f f

unread,
Jun 3, 2010, 11:34:49 AM6/3/10
to
O, mais quelle est la syntaxe de la commande qui lance cette
impression ?

Modeste

unread,
Jun 3, 2010, 11:46:02 AM6/3/10
to
Bonsour ®
"f f" a écrit

> O, mais quelle est la syntaxe de la commande qui lance cette
> impression ?
>

'------ en tete de module
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


' ----- a l'interieur de ta proc
retcod=ShellExecute(0, "print", "Chemin_du_dossier", NULL, NULL, 1)

f f

unread,
Jun 15, 2010, 2:12:48 AM6/15/10
to
Salut,

Je reviens à la charge..

Comment pourrais-je dans cette procédure, forcer l'impression sur une
imprimante spécifique ... ?
NOM DE L'IMPRIMANTE : TOSHIBA e-STUDIO4520CSeriesPCL6


rep = Shell(Shell """C:\Program Files\Adobe\Acrobat 8.0\Reader

0 new messages