Code propriété imprimante

Lu K

XLDnaute Occasionnel
Bonjour à toutes et à tous,

Cela faisait longtemps que j'avais fait appel à vous, mais là je ne sais pas (à force on se débrouille presque tout seul !).

Voilà, j'ai créer une macros pour lancer des impressions automatiques. Jusque là ça va ! Mon problème est que lorsque je sélectionne une certaine imprimante couleur. Au bureau ils ont eu la super idée de mettre un code département pour pouvoir imprimer en couleur (tout le monde connaît le code mais c'est pas grave !). Donc je me retrouve à taper autant de fois le code qu'il y a d'impression lancé ! C'est barbant !!! Il est possible de pouvoir saisir une seul fois le code, mais il faut d'abord aller dans les propriétés de l'imprimante (propriété/autre/Département:) et celui ci ce remet à zéro quand ont sors du fichier.
Quelqu'un connait le code pour pouvoir accéder aux propriétés de l'imprimante ?

D'avance merci pour vos réponse.
 

francedemo

XLDnaute Occasionnel
Re : Code propriété imprimante

bonjour à tous,

malheureusement, j'ai lu qque part qu'en fait, les macros ne pilotent que Office (Excel, Word ...) et que pour piloter l'imprimante, il faut utiliser autre chose (par contre, je ne saurais t'aider plus ... jamais eu besoin de modifier l'imprimante...)
dsl
à+
 

david84

XLDnaute Barbatruc
Re : Code propriété imprimante

Bonsoir,
essaie de voir si tu peux y arriver en passant par l'utilisation de WMI.
Regarde par exemple Ce lien n'existe plus ainsi que les autres se rapportant aux dérivés de la classe Win32_Printer comme cette Ce lien n'existe plus ou les autres traitant de Win32_Printerxxx (colonne de gauche).
Un exemple de macro utilisant WMI (exemple de données ramenées pour chaque imprimante enregistrée sur ton ordinateur) :
Code:
'http://msdn.microsoft.com/en-us/library/windows/desktop/aa394364(v=vs.85).aspx
Sub Printer_config()
strComputer = "."
Set objWMIService = GetObject( _
    "winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.Execquery( _
    "Select * from Win32_PrinterConfiguration")
For Each objItem In colItems
    Debug.Print "Nom: " & objItem.Name
    Debug.Print "N° de version du pilote: " & objItem.DriverVersion
    Debug.Print "Résolution horizontale: " & objItem.HorizontalResolution
    Debug.Print "Résolution verticale: " & objItem.VerticalResolution
    Debug.Print "Type de support sur lequel l'imprimante imprime: " & objItem.MediaType
    Debug.Print "Orientation: " & objItem.Orientation
    Debug.Print "Longueur du papier: " & objItem.PaperLength
    Debug.Print "Taille du papier: " & objItem.PaperSize
    Debug.Print "Largeur du papier: " & objItem.PaperWidth
    Debug.Print "Qualité du travail d'impression: " & objItem.PrintQuality
    Debug.Print "Id: " & objItem.SettingID
    'Debug.Print ": " & objItem.SpecificationVersion
    Debug.Print "Impression des polices TrueType: " & objItem.TTOption
    
    Debug.Print "Monochrome/Couleur: " & objItem.Color
    Debug.Print "Description: " & objItem.Description
Next
End Sub
Bon courage pour la suite.
A+
 

Discussions similaires

Réponses
8
Affichages
665

Statistiques des forums

Discussions
312 248
Messages
2 086 595
Membres
103 250
dernier inscrit
keks974