Excel VBA Drucker auswählen und diesen merken!
#1
Lightbulb 
Guten Morgen liebe Community,

Ich würde gerne in meiner Userform einen Button hinzufügen der die Installierten Drucker anzeigt und man einen von diesen auswählt.
Nun soll der ausgewählte Drucker gemerkt werden und überall wo in meinem Code geruckt werden soll, über den ausgewählten Drucker gedruckt werden.

Also anstatt dem normalen befehl:  ActiveSheet.PrintOut Copies:=1

ein Befehl mit hinterlegtem Drucker: ActiveSheet.PrintOut mit ausgewähltem Drucker Copies:=1

Ist so etwas möglich umzusetzen?

Danke & viele Grüße.
Top
#2
Wink 
Hallo,
in Excel ist alles möglich!
Aus dem Archiv bei Herber (https://www.herber.de/forum/archiv/1052t...isten.html) kommt folgender Code:
Code:
Public Sub ListPrinter()
    'by Ramses
    'Speichert alle installierten Drucker im Array "arrPrinter"
    Const HKEY_current_user = &H80000001
    Dim oReg As Object, i As Long
    Dim strKeyPath As String, strValue As String, msg As String
    Dim arrPrinter As Variant
    Set oReg = GetObject("winmgmts:{impersonationLevel=impersonate}!\\.\root\default:StdRegProv")
    strKeyPath = "Software\Microsoft\Windows NT\CurrentVersion\Devices"
    oReg.EnumValues HKEY_current_user, strKeyPath, arrPrinter
    For i = 0 To UBound(arrPrinter)
        oReg.GetStringValue HKEY_current_user, strKeyPath, arrPrinter(i), strValue
        msg = msg & arrPrinter(i) & Replace(strValue, "winspool,", " auf ") & vbCr
    Next
    Set oReg = Nothing
    MsgBox msg, vbInformation, "Druckerliste WMI"
End Sub
Mit etwas Umarbeiten und der Anweisung Application.ActivePrinter=... lässt sich dann sicher etwas machen...
Gruß der AlteDresdner (Win11, Off2021)
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste