Drucker mit VBA ansprechen: Tipps und Tricks
Schritt-für-Schritt-Anleitung
Um einen Drucker über VBA anzusprechen, kannst du den folgenden Code verwenden:
Sheets("LNe").PrintOut Copies:=1, ActivePrinter:="\\DEPRINT05\DEDE24 auf Ne07:", Collate:=True
Hierbei wird der Drucker über den Netzwerkpfad angesprochen. Stelle sicher, dass der Drucker korrekt in der Systemsteuerung eingebunden ist. Wenn der Port nicht notwendig ist, kannst du den Code wie folgt anpassen:
Sheets("LNi").PrintOut Copies:=1, ActivePrinter:="\\DEPRINT05\DEDE24", Collate:=True
Häufige Fehler und Lösungen
Ein häufiger Fehler ist die Fehlermeldung:
Die PrintOut-Methode des Worksheet-Objektes konnte nicht ausgeführt werden.
Dieser Fehler tritt häufig auf, wenn der Drucker nicht richtig angesprochen wird. Überprüfe, ob:
- Der Drucker in der Systemsteuerung als Standarddrucker eingestellt ist.
- Der Druckername und der Netzwerkpfad korrekt sind. Um den aktiven Drucker herauszufinden, kannst du im VBA-Direktfenster folgendes eingeben:
?ActivePrinter
Falls der Port notwendig ist, stelle sicher, dass er im Code enthalten ist, wenn du den Standarddrucker wechselst.
Alternative Methoden
Eine alternative Methode, um Drucker zu finden, besteht darin, alle möglichen Drucker nacheinander anzusprechen. Ein Beispiel:
For x = 1 To 9
On Error Resume Next
Application.ActivePrinter = "\\DEPRINT05\DEDE24 auf Ne0" & x & ":"
Next x
Diese Schleife sucht nach dem Drucker auf verschiedenen Ports und wählt den ersten, der gefunden wird.
Praktische Beispiele
Hier sind einige Beispiele für das Ansprechen von Druckern mit VBA:
-
Drucker im Headquarter ansprechen:
Sheets("LNi").PrintOut Copies:=1, ActivePrinter:="\\deprint01\DED060S", Collate:=True
-
Drucker im Trainingscenter ohne Port ansprechen:
Sheets("LNi").PrintOut Copies:=1, ActivePrinter:="\\DEPRINT05\DEDE24", Collate:=True
Stelle sicher, dass die Drucker im Netzwerk eindeutig benannt sind, um Verwirrung zu vermeiden.
Tipps für Profis
- Nutze den Befehl
Application.ActivePrinter
um den aktuellen Drucker zu setzen, bevor du den Druckbefehl ausführst.
- Halte die Namen der Drucker in deiner Dokumentation aktuell, besonders wenn neue Drucker hinzugefügt oder bestehende umbenannt werden.
- Teste deinen VBA-Code in einer sicheren Umgebung, bevor du ihn in einem produktiven Kontext einsetzt.
FAQ: Häufige Fragen
1. Warum kann ich den Drucker nicht ohne Port ansprechen?
Die Portangabe ist manchmal notwendig, insbesondere wenn der Drucker nicht eindeutig identifiziert werden kann.
2. Was kann ich tun, wenn die PrintOut-Methode nicht funktioniert?
Überprüfe die Druckereinstellungen in der Systemsteuerung und stelle sicher, dass der Drucker korrekt verbunden ist. Teste auch den Drucker über das VBA-Direktfenster.