|
Publicité | ||||||||||||||||||||||
|
|
#1 | ||||
|
Membre éprouvé
![]() Inscription : juillet 2003 Messages : 354 ![]() |
Bonjour à tous !
Voilà quelques temps que j'essaye d'automatiser quelque chose de tout simple sous VBA Word, mais apparemment de nettement plus compliqué sous VBA Excel. Je veux bien sur parler du changement de bac d'alimentation d'une imprimante. Voilà l'idée générale de ce que je souhaite faire : 1/ Une attestaion est générée automatiquement 2/ L'utilisateur choisi d'imprimer ou d'exporter en PDF 3/ Si il choisit d'imprimer, l'impression doit se faire sur le bac 2 (papier avec en-tête) et sur le bac 3 (papier blanc). La "double" impression doit être faite sans intervention de l'utilisateur (en somme, il clique sur imprimer et ça lui sort automatiquement les deux feuilles : 1 avec en-tête et l'autre sur papier blanc Les étapes 1/ et 2/ ne posent pas de problème mais c'est à l'étape 3/ que je bloque. Après moultes recherches sur DVP et sur gougle, j'ai récupéré un code VB, adapté en VBA, qui me permet de modifier les paramètres de l'imprimante automatiquement en utilisant l'API Windows. Après vérification, selon que je lui demande le bac 2 ou le bac 3, il effectue bien les modifications dans les options de l'imprimante, mais néanmoins en imprimant "réellement", l'impression se fait toujours sur bac 3... . J'ai tenté de sélectionner une autre imprimante et ensuite de resélectionner l'imprimante voulue afin de recharger les paramètres de l'imprimante mais ça n'a rien donné. J'ai tenté également une solution alternative donnée sur DVP, consistant à créer une imprimante avec le Bac 2 par défaut, et une autre avec le bac 3 par défaut, et de jongler avec les deux imprimantes. Là encore, je bloque sur le même problème : il fait bien la modification des imprimantes mais ne prend pas en compte le paramètre par défaut. Le seul moyen pour faire changer le paramètre de bac est d'aller manuellement dans les options et de changer de bac ... . Pour le moment, j'utilise une solution alternative avec des SendKeys mais, avouons-le, c'est très moche de faire ça ! ![]() Quelqu'un aurait-il déjà rencontré ce problème, ou aurait trouvé une solution au changement de bac ? Ci-dessous les procédures pour imprimer soit en utilisant l'API Windows, soit avec la double imprimante. Je ne mets pas le code des fonctions utilisant l'API Windows car il est un peu long. Si vous souhaitez tout de même voir ce code n'hésitez pas à me le demander (si ça peut aider ou si vous êtes curieux ^^). Merci bien ! --- Sub avec API Windows --- Code :
--- Sub avec Double Imprimante --- Code :
|
||||
|
|
00
|
|
|
#2 |
|
Membre éprouvé
![]() Inscription : juillet 2003 Messages : 354 ![]() |
Je continue de chercher (dés que j'ai un peu de temps
Peut être quelqu'un aurait un Excel plus récent pour tester ? Je vais demander à mon employeur des nouveaux Excel
|
|
|
00
|
Copyright © 2000-2012 - www.developpez.com