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

Boite de dialogue imprimer par macro

10 réponses
Avatar
Laurent
Bonjour,
Je cherche à imprimer des présentations PowerPoint en macro.
Le but est d'imprimer avec un format particulier (avec commentaires entre
autres).
J'ai réussi à le faire, le problème c'est que l'utilisateur ne peut choisir
l'imprimante, il doit paramétrer son imprimante par défaut (recto verso,
couleurs, bas ...)
Auriez vous une solution pour afficher la boite de dialogue d'impression
(sous Excel ou Word, on peut le faire avec dialogs il me semble) ?

Merci d'avance
Laurent

10 réponses

Avatar
Geo
Bonjour Laurent

Bonjour,
Je cherche à imprimer des présentations PowerPoint en macro.
Le but est d'imprimer avec un format particulier (avec commentaires entre
autres).
J'ai réussi à le faire, le problème c'est que l'utilisateur ne peut choisir
l'imprimante, il doit paramétrer son imprimante par défaut (recto verso,
couleurs, bas ...)
Auriez vous une solution pour afficher la boite de dialogue d'impression
(sous Excel ou Word, on peut le faire avec dialogs il me semble) ?



Si vous aviez un petit bout du code utilisé, ce serait plus pratique
pour vous aider.

Effectivement Dialogs n'est pas disponible sous PowerPoint, il me
semble qu'on peut contourner la difficulté en lançant justement une de
ces deux applications, je vais rechercher dans un bouquin où on en
parle.

--
A+
Avatar
Laurent
Aujoud'hui j'ai un code de ce type :

Imprimante = Application.ActivePrinter
NbCopies = 1
With ActivePresentation.PrintOptions
.RangeType = ppPrintSlideRange
With .Ranges
.ClearAll
.Add Start:=1, End:=1
End With
.NumberOfCopies = NbCopies
.Collate = msoTrue
.OutputType = ppPrintOutputSlides
.PrintHiddenSlides = msoTrue
.PrintColorType = ppPrintColor
.FitToPage = msoFalse
.FrameSlides = msoFalse
.HandoutOrder = ppPrintHandoutHorizontalFirst
.ActivePrinter = Imprimante
End With
ActivePresentation.PrintOut

Sélection de l'imprimante par défaut et impression avec des paramètres.
Sauf que les utilisateurs vont vouloir paramétrer cette imprimante (Recto
Verso, couleur, etc.), c'est pour cela que j'aimerais affichir la boite de
dialogue d'impression.
J'ai effectivement voulu le piloter par Word ou par Excel, mais il me semble
que l'on peut piloter que les actions existants dans PowerPoint... donc même
problème.

Laurent

"Geo" a écrit :

Bonjour Laurent

> Bonjour,
> Je cherche à imprimer des présentations PowerPoint en macro.
> Le but est d'imprimer avec un format particulier (avec commentaires entre
> autres).
> J'ai réussi à le faire, le problème c'est que l'utilisateur ne peut choisir
> l'imprimante, il doit paramétrer son imprimante par défaut (recto verso,
> couleurs, bas ...)
> Auriez vous une solution pour afficher la boite de dialogue d'impression
> (sous Excel ou Word, on peut le faire avec dialogs il me semble) ?

Si vous aviez un petit bout du code utilisé, ce serait plus pratique
pour vous aider.

Effectivement Dialogs n'est pas disponible sous PowerPoint, il me
semble qu'on peut contourner la difficulté en lançant justement une de
ces deux applications, je vais rechercher dans un bouquin où on en
parle.

--
A+





Avatar
Geo
Bonjour

J'ai effectivement voulu le piloter par Word ou par Excel, mais il me semble
que l'on peut piloter que les actions existants dans PowerPoint... donc même
problème.



L'idée aurait été de changer l'imprimante active dans une autre
application puisque ça on ne peut pas le faire dans PowerPoint.

J'ai un code Word qui imprime directement en recto verso su
l'imprimante qu'on veut, il faut que je regarde si on peut le passer
dans PowerPoint

[Réponse faite sur le forum public PowerPoint :
news://msnews. microsoft.com/microsoft.public.fr.PowerPoint ]

--
A+
Avatar
Geo
Re

J'ai lu un peu vite, vous ne voulez pas imposer par programme,
l'imprimante, le recto-verso, la couleur etc, ce sont les utilisateurs
qui choisissent au coup par coup, et là j'ai pas.
Mais je cherche ...

--
A+
Avatar
Laurent
Bonjour,
C'est exactement ce que je veux... je continue à chercher aussi.

Laurent

"Geo" a écrit :

Re

J'ai lu un peu vite, vous ne voulez pas imposer par programme,
l'imprimante, le recto-verso, la couleur etc, ce sont les utilisateurs
qui choisissent au coup par coup, et là j'ai pas.
Mais je cherche ...

--
A+





Avatar
Geo
Bonjour

Bonjour,
C'est exactement ce que je veux... je continue à chercher aussi.



On peut changer l'imprimante par défaut avec Dialogs, mais rien de plus
et la doc est très pauvre sur le paramétrage.
Il reste bien sûr la solution de faire une UserForm avec utilisation
d'API pour faire ce que vous souhaitez.
Reste à voir si ça vaut l'investissement.


--
[Réponse faite sur le forum public PowerPoint :
news://msnews. microsoft.com/microsoft.public.fr.PowerPoint ]

--
A+
Avatar
Papyjac
Bonjour Laurent et Geo,

En supposant qu'ony arrive, rien ne prouve que l'imprimante de l'utilisateur
dispose d'un recto verso


--
Papyjac


"Geo" a écrit :

Bonjour

> Bonjour,
> C'est exactement ce que je veux... je continue à chercher aussi.

On peut changer l'imprimante par défaut avec Dialogs, mais rien de plus
et la doc est très pauvre sur le paramétrage.
Il reste bien sûr la solution de faire une UserForm avec utilisation
d'API pour faire ce que vous souhaitez.
Reste à voir si ça vaut l'investissement.


--
[Réponse faite sur le forum public PowerPoint :
news://msnews. microsoft.com/microsoft.public.fr.PowerPoint ]

--
A+





Avatar
Geo
Bonjour

En supposant qu'ony arrive, rien ne prouve que l'imprimante de l'utilisateur
dispose d'un recto verso



D'accord pour le premier point, j'arrive à ouvrir le dialogue de
l'impression avec l'API Printdialog, mais pas à l'exploiter pour
imprimer la présentation.

Du moment où on a accès à l'imprimante, on peut connaître toutes ses
caractéristiques en utilisant un type de données Devmode :
http://msdn.microsoft.com/en-us/library/ms535771.aspx
Pour le recto-verso c'est Duplex.

Comme vous le soupçonniez les API ouvre de larges horizons, dans
lesquels il est facile de se perdre.

--
A+
Avatar
Laurent
Bonjour,
Effectivement il y a possibilités, mais comme vous l'avez dit, je ne pense
pas que l'investissement vaille le coup.
Je vais garder cette solution au chaud et metter en application le fait
qu'ils doivent paramétrer leur imprimante pas défaut avant de lancer
l'impression.
En même temps j'ai l'impression d'utiliser PowerPoint pour une utilité qui
n'est pas la sienne... mais ce n'est pas moi qui décide.

Merci de votre aide
Laurent

"Geo" a écrit :

Bonjour

> En supposant qu'ony arrive, rien ne prouve que l'imprimante de l'utilisateur
> dispose d'un recto verso

D'accord pour le premier point, j'arrive à ouvrir le dialogue de
l'impression avec l'API Printdialog, mais pas à l'exploiter pour
imprimer la présentation.

Du moment où on a accès à l'imprimante, on peut connaître toutes ses
caractéristiques en utilisant un type de données Devmode :
http://msdn.microsoft.com/en-us/library/ms535771.aspx
Pour le recto-verso c'est Duplex.

Comme vous le soupçonniez les API ouvre de larges horizons, dans
lesquels il est facile de se perdre.

--
A+





Avatar
Geo
Bonjour Laurent

En même temps j'ai l'impression d'utiliser PowerPoint pour une utilité qui
n'est pas la sienne...



A la limite si le vba ne savait pas faire, on passerait outre,
ce qui est rageant c'est que la fonctionnalité que vous demandez existe
dans d'autres vba d'Office.
On a l'impression que le vba PowerPoint est le parent pauvre de la
famille. L'enregistreur de macro a disparu avec la version 2007.
Quand on sait que la version Mac Office 2008 n'a plus de vba on peu se
poser des questions pour l'avenir.
Quoique MS ait annoncé qu'il serait remis pour la prochaine version.

Ce qu'on aimerait, c'est que le vba évolue comme le vb, par exemple
plus ça va, plus les noms de propriétés diffèrent.

--
A+