Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Drucker Einstellungen

Drucker Einstellungen
12.02.2016 08:48:32
Hermelin
Hallo zusammen
Möchte meinen Drucker via Sendkeys einstellen. (finde keine andere Lösung)
Gehe vom Standardrucker auf einen zweiten Drucker und wieder zurück (VBA) dabei verliert er die Einstellung die ich brauche.
Nun müsste ich die Leertaste drücken und dieser Befehl existiert nicht.

Sub Makro1()
' Makro1 Makro
With Application
.SendKeys "^p%u%d{TAB}", True
.SendKeys "SPACE", True
.SendKeys "{DOWN 4}", True
.SendKeys "{RIGHT}{DOWN 4}{RIGHT}{DOWN 2}{ENTER 2}", True
End With
End Sub
Habe auch bemerkt, dass diese Befehlskette nicht immer gleich rund läuft. Sprich einmal läuft sie durch, das andere mal stoppt sie mittendrin. Muss ich da noch irgendwo Pausen generieren?
Hoffe kann mir wer helfen

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Drucker Einstellungen
12.02.2016 08:55:02
Hermelin
Der Standarddrucker ist ein XEROX Phaser 6600DN PS, von da Wechsel zu EasyCoder C4 und wieder zurück zu XEROX Phaser 6600DN PS
In Excel habe ich ein Programm das entweder auf Kuvert oder Etiketten drucken soll.
Sobald ich auf den Etikettendrucker und dann wieder auf den Standarddrucker wechsle, verliert er die Info, das er aus der Zusatzzufuhr das Kuvert holen soll
Drucker (EasyCoder C4) wird als Netzwerkdrucker mit eigener IP Adresse geführt.
Habe hier einen der VBA Befehle dazu gepostet:
Sub Testdruck()
Dim sOldPrinter As String
Dim sNewPrinter As String
sOldPrinter = Application.ActivePrinter
sNewPrinter = GetPrinterName("150.43.253.143") ' IP - Adresse ändern
If Not sNewPrinter = "" Then
Application.ActivePrinter = sNewPrinter
'Hier wird dann entsprechend gedruckt
Worksheets("Etikettendrucker").PrintOut ' Tabellenblattname ändern
'Zurückstellen auf Standarddrucker
Application.ActivePrinter = sOldPrinter
Else
MsgBox ("Achtung! Dieser Drucker existiert nicht!")
End If
Sheets("Etikettendrucker").Select ' Tabellenblattname ändern
End Sub

Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Drucker Einstellungen in Excel optimieren


Schritt-für-Schritt-Anleitung

Um die Drucker Einstellungen in Excel über VBA zu steuern, kannst Du folgende Schritte befolgen:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.

  2. Füge ein neues Modul hinzu, indem Du mit der rechten Maustaste auf "VBAProject (DeineDatei.xlsx)" klickst und "Einfügen" > "Modul" auswählst.

  3. Kopiere den folgenden Code in das Modul:

    Sub DruckerEinstellungenAnpassen()
       Dim sOldPrinter As String
       Dim sNewPrinter As String
       sOldPrinter = Application.ActivePrinter
       sNewPrinter = GetPrinterName("150.43.253.143") ' IP-Adresse ändern
    
       If Not sNewPrinter = "" Then
           Application.ActivePrinter = sNewPrinter
           Worksheets("DeinTabellenblatt").PrintOut
           Application.ActivePrinter = sOldPrinter
       Else
           MsgBox ("Achtung! Dieser Drucker existiert nicht!")
       End If
    End Sub
  4. Passe den Namen des Tabellenblatts an, von dem Du drucken möchtest.

  5. Schließe den VBA-Editor und teste das Makro.


Häufige Fehler und Lösungen

  • Fehler: Drucker existiert nicht
    Dieser Fehler kann auftreten, wenn die IP-Adresse des Druckers falsch eingegeben wurde. Überprüfe die IP-Adresse des Druckers und stelle sicher, dass sie korrekt ist.

  • Problem: Druckeinstellungen gehen verloren
    Wenn Du zwischen Druckern wechselst, kann Excel die Einstellungen verlieren. Stelle sicher, dass Du nach dem Drucken den Standarddrucker wiederherstellst, wie im obigen Beispiel gezeigt.

  • SendKeys funktioniert nicht zuverlässig
    Wenn Du SendKeys verwendest, kann es zu unvorhersehbaren Ergebnissen kommen. Es wird empfohlen, diese Methode zu vermeiden und stattdessen direkte Druckbefehle zu nutzen.


Alternative Methoden

Eine alternative Methode zur Verwaltung von Drucker Einstellungen besteht darin, die Drucker über die Windows-Systemsteuerung zu konfigurieren. Hier kannst Du:

  1. Die Drucker-IP-Adresse ändern.
  2. Den Standarddrucker festlegen, sodass Excel automatisch den gewünschten Drucker nutzt, ohne dass Du den Druckertreiber wechseln musst.

Praktische Beispiele

Hier sind einige praktische Beispiele, wie Du die Drucker Einstellungen in Excel effizient nutzen kannst:

  1. Wenn Du regelmäßig auf verschiedene Drucker druckst, erstelle ein Makro, das die Drucker IP-Adresse ändert und das entsprechende Dokument druckt.
  2. Du kannst ein Dropdown-Menü in Excel erstellen, um zwischen verschiedenen Druckern zu wählen. Verwende die Application.ActivePrinter-Eigenschaft, um den ausgewählten Drucker zu setzen und zu verwenden.

Tipps für Profis

  • Verwende Pausen in SendKeys: Wenn Du SendKeys einsetzen musst, füge Pausen ein, um sicherzustellen, dass der Befehl korrekt ausgeführt wird. Beispiel:

    Application.Wait Now + TimeValue("00:00:01") ' 1 Sekunde warten
  • Drucker überwachen: Nutze VBA, um die Drucker aktiv zu überwachen und zu überprüfen, ob sie online sind, bevor Du einen Druckauftrag sendest.


FAQ: Häufige Fragen

1. Wie ändere ich die IP-Adresse meines Druckers in Excel?
Um die IP-Adresse deines Druckers in Excel zu ändern, musst Du den entsprechenden VBA-Befehl anpassen. Verwende die GetPrinterName Funktion und setze die IP-Adresse auf die gewünschte.

2. Wie kann ich den Standarddrucker in Excel festlegen?
Du kannst den Standarddrucker in Excel festlegen, indem Du den Drucker über Application.ActivePrinter änderst und sicherstellst, dass der gewünschte Drucker als Standarddrucker in den Windows-Druckereinstellungen konfiguriert ist.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige