[..] Sélection de l'imprimante sous excel

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

[..] Sélection de l'imprimante sous excel

#1

Message par peuchere83 »

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.

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
Par avance merci à tous.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Avatar du membre
scorp84
Niveau 7
Niveau 7
Messages : 415
Enregistré le : mar. 04 nov. 2008 21:51
Localisation : Avignon, France
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#2

Message par scorp84 »

Bonjour peuchere83,

Je suis entrain de bosser sur un projet de changement d'imprimante si celle par défaut est OFFLINE.

Voici ce que j'ai commencé à faire :
► Afficher le texte
Il n'est pas fini, mais j'espère que cela pourra t'aider à récupérer des infos pour obtenir le nom qui te convient.

En espérant avoir pu t'aider.

Amicalement.

BM
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#3

Message par peuchere83 »

Merci Scorp84,

mon problème n'est pas la récupération du nom brut de l'imprimante mais le port que semble lui rajouter excel (ex dans mon cas 'Ne02:' )
Par contre ton programme m'intéresse je vais donc le regarder de plus près.

je vais continuer mes recherches sur les forum VBA au cas où.

Cordialement
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#4

Message par peuchere83 »

Après recherche, la seule solution semble de tester les différentes possibilités (de Ne01: à Ne10:)

Je vais donc devoir (je pense) utiliser une gestion d'erreur sur les objets com.

Si quelqu'un a une autre idée, je prends de suite !!! :P

@+
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Avatar du membre
Jerome
Niveau 9
Niveau 9
Messages : 661
Enregistré le : mar. 07 avr. 2009 08:35
Localisation : Picardie
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#5

Message par Jerome »

Coucou,

Je ne sait pas si sa peut t'aider, mais je post au cas ou ...

http://www.autoitscript.fr/forum/viewto ... =11&t=4794


Jérôme
Avatar du membre
scorp84
Niveau 7
Niveau 7
Messages : 415
Enregistré le : mar. 04 nov. 2008 21:51
Localisation : Avignon, France
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#6

Message par scorp84 »

J'ai aussi trouvé ça :
► Afficher le texte
Tu verras "$objItem.PortName" (59). ça devrait t'aider à récupérer le port.

Si tu veux en savoir plus :
http://msdn.microsoft.com/en-us/library ... 85%29.aspx
http://www.autoitscript.com/forum/index ... opic=18524

Amicalement.

BM
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#7

Message par peuchere83 »

Merci pour ces réponses !!!

Mais malheureusement cela ne change rien à mon problème :
@Jerome :
Oui j'ai déjà utilisé le fonction de Tlem (dixit mon 1er post)

@scorp84 :
Ta fonction est la même que Tlem (avec beaucoup plus d'information) mais malheureusement le numéro qui change sur excel ne correspond pas au port (je pensais cela moi aussi mais à tord)
Par exemple dans mon cas ma HP LaserJet 1020 est sur le port USB001 (dixit ton code) alors qu'excel me la déclare comme : 'HP LaserJet 1020 sur Ne04:'

Je suis donc entrain de faire une gestion d'erreur sur les objets com.

Merci
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Avatar du membre
SrBelial
Niveau 7
Niveau 7
Messages : 335
Enregistré le : jeu. 22 juil. 2010 11:29
Localisation : 81 et 31
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#8

Message par SrBelial »

tu utilise des imprimantes qui ne sont pas déclarées en tant qu'imprimantes locales, elles te sont remontées par les autres machines présentes sur le réseau !

en conséquence : soit tu installe ces imprimantes directement sur ton post (aucun branchement à faire, juste suivre la procédure normale d'ajout d'imprimante en la recherchant dans l'annuaire réseau)
soit tu utilise directement des fonctions de connexion à des ressources distantes, ça pourrait éventuellement aider ...
_WinNet_AddConnection2 ou _WinNet_AddConnection3
(voir un sujet initié par Sh4dows pour en apprendre un peu plus)

en revanche après à toi de voir comment cela serait utilisable pour utiliser les imprimantes connectés par ce biais là ... parce que moi j'en sais pas plus !
.-SrB-. The One
  • NON ! AutoIt n'est PAS un langage réservé à la réalisation de bots !
  • OUI ! AutoIt est un langage à part entière !
  • Dans SciTE sélectionnez 1 mot puis F1
  • Don't want english doc ?? go to documentation française !! >>ICI<<
[/size]
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#9

Message par peuchere83 »

SrBelial a écrit :tu utilise des imprimantes qui ne sont pas déclarées en tant qu'imprimantes locales, elles te sont remontées par les autres machines présentes sur le réseau !
Se sont des imprimantes USB qui sont physiquement reliées à mon PC. Comment ne peuvent elles pas être déclarées comme imprimantes locales :?:

De plus j'ai essayé aussi avec une imprimante réseau et elle est aussi nommée de la même manière sous excel : SonNom sur Ne0x:


Par avance merci.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Avatar du membre
SrBelial
Niveau 7
Niveau 7
Messages : 335
Enregistré le : jeu. 22 juil. 2010 11:29
Localisation : 81 et 31
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#10

Message par SrBelial »

si elles sont déclarées comme s'appelant "laserqqch sur Neo#" c'est qu'elles sont considérées comme des imprimantes réseau, et que c'est le poste Neo# qui partage ces imprimantes qui te permet d'y accéder ...

du coup tu as beau avoir un cable USB .... quand tu imprime ça fait tout le circuit :
ton poste => réseau/routeur/switch/autre => Neo# => réseau/routeur/etc ... => ton poste => imprimante

(à moins que ce soient des imprimantes possédant une interface ethernet ou wifi auquel cas après le second passage dans le réseau ça ne passe pas par ton poste mais direct à l'imprimante ...
.-SrB-. The One
  • NON ! AutoIt n'est PAS un langage réservé à la réalisation de bots !
  • OUI ! AutoIt est un langage à part entière !
  • Dans SciTE sélectionnez 1 mot puis F1
  • Don't want english doc ?? go to documentation française !! >>ICI<<
[/size]
Avatar du membre
peuchere83
Niveau 5
Niveau 5
Messages : 169
Enregistré le : mer. 17 déc. 2008 10:50
Status : Hors ligne

Re: [..] Sélection de l'imprimante sous excel

#11

Message par peuchere83 »

Merci pour ces informations SrBelial.

Mon seul problème est que je ne vois pas comment installer mes imprimantes pour qu'elles soient considérées comme en local.
Car si je suis ton raisonnement, si je débranche mon câble réseau, je devrais être dans l'impossibilité d'imprimer sur mon imprimante USB ?!
Or cela fonctionne et elle est toujours détectées de la même manière sous Excel.

Le poste Neox n'existe pas sur mon réseau. Je pense donc que c'est excel qui le crée pour son fonctionnement sur port usb car en port lpt1 pas de problème.

D'ailleurs pourrais tu faire le test suivant pour moi stp :
tu dois certainement avoir une imprimante usb connectée à ton poste. Peux tu vérifier son nom sous excel ?
Pour cela tu créés une nouvelle macro (outils>macro>nouvelle macro) et tu lance une impression de ta page vierge sur ton imprimante usb. Tu arretes ensuite l'enregistrement de la macro, puis tu vas dans outils>macro>macros et tu sélectionne modifié pour voir le nom détecté.

Je me doute que tu connais forcément cette manipulation mais je la précise pour les autres personnes du forum qui auront la gentillesse de tester cela pour moi.

Par avance merci.
Tous biens que tu possèdes est un souci qui te retient.
Skippy est là pour t'enlever tous tes soucis.
Répondre