[..] Sélection de l'imprimante sous excel
Posté : mar. 31 août 2010 15:09
Bonjour à tous,
je viens de tomber sur une "coquille" dans mon programme de pilotage d'imprimante au travers d'excel :
je pilote 3 imprimantes USB qui peuvent changer de port à chaque démarrage.
Par exemple je possède une 'HP LaserJet 1020' qui est reconnue (actuellement sous Excel) avec le nommage suivant : 'HP LaserJet 1020 sur Ne02:'
La dernière partie du nom (Ne02:) change quasiment à chaque démarrage (cela peut être Ne03:, ...).
Cela est lié à l'ordre de détection des différentes imprimantes par le poste.
Je n'arrive pas à comprendre la logique de détection et donc à modifier cela dans mon programme.
J'ai déjà regardé la fonction donné par Tlem sur le post suivant : http://www.autoit.fr/forum/viewtopic.php?f=11&t=4794 mais sans succès : je n'arrive pas à définir le numééro qui doit être utilisé (02 dans mon exemple).
Voici un bout de mon code pour comprendre l'importance de cette information.
Par avance merci à tous.
je viens de tomber sur une "coquille" dans mon programme de pilotage d'imprimante au travers d'excel :
je pilote 3 imprimantes USB qui peuvent changer de port à chaque démarrage.
Par exemple je possède une 'HP LaserJet 1020' qui est reconnue (actuellement sous Excel) avec le nommage suivant : 'HP LaserJet 1020 sur Ne02:'
La dernière partie du nom (Ne02:) change quasiment à chaque démarrage (cela peut être Ne03:, ...).
Cela est lié à l'ordre de détection des différentes imprimantes par le poste.
Je n'arrive pas à comprendre la logique de détection et donc à modifier cela dans mon programme.
J'ai déjà regardé la fonction donné par Tlem sur le post suivant : http://www.autoit.fr/forum/viewtopic.php?f=11&t=4794 mais sans succès : je n'arrive pas à définir le numééro qui doit être utilisé (02 dans mon exemple).
Voici un bout de mon code pour comprendre l'importance de cette information.
Code : Tout sélectionner
$RefImp1020 = "HP LaserJet 1020 sur Ne02:"
If $oExcel = "" Then $oExcel = ObjCreate("Excel.Application")
$oExcel.Visible = 0 ; Afficher excel (=1) ou masquer (=0)
$oExcel.WorkBooks.Open($PathFileProd) ; Ouverture du fichier
$oExcel.ActiveSheet.PageSetup.Zoom = 91
$oExcel.ActivePrinter = $RefImp1020 ; Impression sur l'imprimante 1020
$oExcel.ActiveSheet.PrintOut