Drucker auswählen und Namen festhalten

Hallo zusammen,

ich finde einfach keine Lösung.

Betrifft VBA Excel 2003
Problem: Der Anwender soll aus einer Liste der installierten Drucker einen auswählen, den Name dieses Druckers brauche ich als String. Er soll jedoch nicht als aktueller Drucker eingestellt werden!

In VB6 würde ich das mit dem Printer-Object machen:
Eine Form mit einer Combobox, dann…

Private Sub Form_Load()
Dim X As Integer
Dim Printername As String

'Die Combobox mit vorhandenen Druckern füllen
For X = 0 To Printers.Count - 1
Printername = Printers(X).DeviceName
Me.Combo1.AddItem Printername
Next X

End Sub

Leider gibt es Printer und Printers in VBA nicht.
Nun habe ich es mit dem Commondialog-Objekt und mit Application.Dialogs(xlDialogPrint).Show versucht. Die haben aber leider beide den Fehler, dass sie mir den Standard-Drucker verstellen. Außerdem will ich gar nicht den gesamten Druckerdialog sehen, sondern nur einen Namen aus einer Liste wählen, den ich dann als String weiter verwenden kann.
Ich weiß jetzt auch nicht, wie ich den Standarddrucker auslesen bzw. setzen kann, Application.ActivePrinter gibt mir ja nur den für die Anwendung gesetzten Drucker zurück.

Ich steh auf dem Schlauch.

Hallo zusammen,

Hi,
schau mal hier:
http://mypage.bluewin.ch/reprobst/WordFAQ/EnumPrts.htm
Gruß.
Timo