Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1540to1544
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Drucker einstellen

Drucker einstellen
20.02.2017 08:53:55
Thomas
Hallo Excelfreunde,
ich habe im Archiv folgendes Macro von Ramses gefunden.
Option Explicit
Public prtArray() As Variant
Sub Get_Printer_Info()
'by Ramses
'speichert alle Drucker in einem Array
Dim objWMIService As Object
Dim objPrinterList As Object, objPrinter As Object, objPrinterCol As Object
Dim strPCName As String
Dim i As Long
'Lokaler Computer
'"." ist der lokale Computer
'Ansonsten den RemoteComputernamen angeben um von dort die Drucker auszulesen
'u.U. sind dort Adminrechte nötig
strPCName = "."
Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" &  _
strPCName & "\root\cimv2")
Set objPrinterCol = objWMIService.ExecQuery("Select * from Win32_Printer")
'Liste der wichtigsten zurückgegebenen Werte die möglich sind zum Abfruf
'die vollständige Liste unter
'http://msdn.microsoft.com/en-us/library/aa394363(VS.85).aspx
' string Caption;
' string CharSetsSupported[];
' uint16 CurrentLanguage
' string CurrentPaperType
' boolean Default
' uint16 DetectedErrorState;
' string DeviceID;
' boolean Direct;
' boolean ErrorCleared;
' string ErrorDescription;
' string ErrorInformation[];
' boolean Local;
' string Location;
' string Name;
' boolean Network;
' string Parameters;
' string PNPDeviceID;
' string PortName;
' uint32 PrinterState;
' uint16 PrinterStatus;
' string ServerName;
' boolean Shared;
' string ShareName;
' boolean SpoolEnabled;
' datetime StartTime;
' string Status;
' uint16 StatusInfo;
' string SystemName;
' boolean WorkOffline
i = 0
For Each objPrinter In objPrinterCol
With objPrinter
ReDim Preserve prtArray(i)
prtArray(i) = .Name
i = i + 1
End With
Next
'mist klappt ncht MsgBox objPrinter.Name, vbInformation, "Druckerliste WMI"
End Sub
https://www.herber.de/forum/archiv/1052to1056/1053323_vorhandere_Drucker_auflisten.html
in der Beschreibung steht das man sich damit alle drucker in einer tabelle auflisten kann. Und das man sich per knopdruck einen anderen Drucker einstellen kann. Leider bin ich mit mein VBA noch lange nicht soweit das ich dies hin bekomme.
Kann mir dies jemand zeigen welche Möglichkeiten dieses Macro hat?
https://www.herber.de/bbs/user/111588.xlsm
vielen dank schon mal für eurer interesse.
mfg thomas

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Drucker einstellen
21.02.2017 02:54:10
fcs
Hallo Thomas,
das Makro von Ramses erstellt ein Daten-Array mit den Druckernamen
Nachdem man das Makrovon Ramses gestartet hat sind die Druckernamen in diesem Daten-Array verfügbar und können weiter verarbeitet werden.
Ich hab deine Datei mal entsprechend erweitert, so dass die Liste im Blatt erzeugt wird und im Userform für die Listbox und die Combobox die entsprechende Auswahllise angezeigt wird.
Für die Auswahl eines Drucker unter Excel-VBA kann man aber auch direkt das entsprechende Dialogfenster anzeigen. Hab ich in deinem Userform eingebaut.
https://www.herber.de/bbs/user/111615.xlsm
Gruß
Franz
Anzeige
oh man klasse Franz
21.02.2017 17:46:00
Thomas
Hallo Franz,
hab vielen vielen dank für deine viele mühe.
ich werde mal schauen ob ich es logisch fassen kann und versuche dies mal nachzuvollziehen.
Vielleicht kann ich so etwas dann ja selbst mal anpassen.
Wenigstens ein stück davon.
ich wünsch dir noch eine schöne ruhige Woche.
PS: deine UF von damals arbeitet immer noch tadellos und zuverlässig ich denk da oft an dich.
mfg thomas

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige