Lister et sélectionner une imprimante [Résolu]

yapaksa 9 Messages postés mercredi 11 mai 2005Date d'inscription 14 juin 2006 Dernière intervention - 13 juin 2006 à 09:16 - Dernière réponse : yapaksa 9 Messages postés mercredi 11 mai 2005Date d'inscription 14 juin 2006 Dernière intervention
- 14 juin 2006 à 14:51
Bonjour à toute la communauté.
Je suis en échec depuis plusieurs jours sur un problème en VBA
Je suis en version XP 2002 SP1 et WORD 2002.
Je voudrais trouver le moyen de lister les imprimantes disponibles pour les afficher la une LB pour pouvoir ensuite en sélectionner une dans la liste pour un publipostage..
En VB c'est très simple avec la collection PRINTERS mais en VBA je n'ai pas trouvé de solution. J'ai fouillé le net (peut-être mal) et je n'ai trouvé qu'une proposition avec les API's  OpenPrinter, ClosePrinter, GetPrinter, SetPrinter pour extraire le contenu du fichier WIN.INI ce qui ne me semble plus d'actualité dans XP.
Peut-être faut-il ajouter une Référence mais laquelle ?
Je remercie d'avance celles et ceux qui pourraient me mettre sur la voie.
Afficher la suite 

Votre réponse

7 réponses

Meilleure réponse
cs_bipou 61 Messages postés mercredi 14 janvier 2004Date d'inscription 14 septembre 2006 Dernière intervention - 14 juin 2006 à 11:54
3
Merci
pour word essaie :
Dialogs(wdDialogFilePrintSetup).Display 'affiche mais ne prens pas en compte
ou
Dialogs(wdDialogFilePrintSetup).show 'prend en compte

Merci cs_bipou 3

Avec quelques mots c'est encore mieux Ajouter un commentaire

Codes Sources a aidé 70 internautes ce mois-ci

Commenter la réponse de cs_bipou
cs_bipou 61 Messages postés mercredi 14 janvier 2004Date d'inscription 14 septembre 2006 Dernière intervention - 13 juin 2006 à 17:40
0
Merci
essaie:
Application.Dialogs(xlDialogPrinterSetup).Show
Commenter la réponse de cs_bipou
yapaksa 9 Messages postés mercredi 11 mai 2005Date d'inscription 14 juin 2006 Dernière intervention - 14 juin 2006 à 09:43
0
Merci
Merci à tous ceux qui se sont penchés sur la cause de ma migraine et particulièrement à bipou.
Application.Dialogs(xlDialogPrinterSetup).Show fonctionne très bien avec excel mais mon problème concerne WORD.
J'ai ajouté dans mes références Microsoft excel pour l'utiliser dans Word, mais la fenêtre qui s'affiche n'a rien a voir avec les imprimantes. Je continue donc à galérer. Si je trouve une solution je ne manquerai pas de la faire connaitre.
Commenter la réponse de yapaksa
yapaksa 9 Messages postés mercredi 11 mai 2005Date d'inscription 14 juin 2006 Dernière intervention - 14 juin 2006 à 11:57
0
Merci
J'ai fini par trouver une solution c'est:
    Application.Dialogs.Item(Word.WdWordDialog.wdDialogFilePrintSetup).Show

Cette boite permet de selectionner une imprimante par défaut dans la liste des imprimantes installées. Bien sur si on veut restaurer l'imprimante d'origine par défaut après le job il faut la mémoriser puis la restaurer ce qui donnerai ça:

Save_Imp= Application.ActivePrinter
Application.Dialogs.Item(Word.WdWordDialog.wdDialogFilePrintSetup).Show
........
..........
job
..........
.........
Application.ActivePrinter = Save_Imp

Merci à tous ceux qui se sont intéressés à mon PB
Commenter la réponse de yapaksa
yapaksa 9 Messages postés mercredi 11 mai 2005Date d'inscription 14 juin 2006 Dernière intervention - 14 juin 2006 à 12:05
0
Merci
Merci à bipou j'ai vérifé que sa ligne est plus simple que la mienne.
Dialogs(wdDialogFilePrintSetup).Display
est equivalent à
Application.Dialogs.Item(Word.WdWordDialog.wdDialogFilePrintSetup).Show
Commenter la réponse de yapaksa
yapaksa 9 Messages postés mercredi 11 mai 2005Date d'inscription 14 juin 2006 Dernière intervention - 14 juin 2006 à 14:39
0
Merci
Pour clore cette histoire j'annule ce que j'ai dit sur le message précédent et explicite un peu plus ce que disait bipou:
   Dialogs(wdDialogFilePrintSetup).Display
permet d'ouvrir la fenêtre des imprimantes mais n'autorise pas le changement d'imprimante par défaut.
   Dialogs(wdDialogFilePrintSetup).show
permet d'ouvrir la fenêtre des imprimantes et autorise le changement d'imprimante par défaut.
Commenter la réponse de yapaksa
yapaksa 9 Messages postés mercredi 11 mai 2005Date d'inscription 14 juin 2006 Dernière intervention - 14 juin 2006 à 14:51
0
Merci
Pour clore cette histoire j'annule ce que j'ai dit sur le message précédent et explicite un peu plus ce que disait bipou:
   Dialogs(wdDialogFilePrintSetup).Display
permet d'ouvrir la fenêtre des imprimantes mais n'autorise pas le changement d'imprimante par défaut.
   Dialogs(wdDialogFilePrintSetup).show
permet d'ouvrir la fenêtre des imprimantes et autorise le changement d'imprimante par défaut.
Commenter la réponse de yapaksa

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.