Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Makro vor Datei drucken starten

Forumthread: Makro vor Datei drucken starten

Makro vor Datei drucken starten
touchmarul
Hallo, habe jetzt schon ziemlich lange recherchiert.
Ich möchte, dass bevor über das normale Menü "Datei-Drucken.." gedruckt wird ein Makro gestartet wird.
Ich weiss, dass es einfach gehen muss, hab's vor einiger Zeit irgendwo gesehen.
Bloß wo ? Kann mir ein lieber Mensch einen Tip geben ?
Anzeige

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

Betreff
Benutzer
Anzeige
AW: Makro vor Datei drucken starten
07.07.2010 17:21:15
Hajo_Zi
Halo UnbekanntE8R9;
meinst Du Private Sub Workbook_BeforePrint(Cancel As Boolean) in DieseArbeitsmappe. Das wird vor Druck ausgeführt, nicht vor dem Dialog.

AW: Makro vor Datei drucken starten
07.07.2010 17:27:50
touchmarul
genau !
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Makro vor dem Drucken in Excel ausführen


Schritt-für-Schritt-Anleitung

Um ein Makro vor dem Drucken einer Excel-Datei auszuführen, kannst Du den folgenden VBA-Code in das Modul "DieseArbeitsmappe" deiner Excel-Datei einfügen:

  1. Öffne Deine Excel-Datei.
  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.
  3. Doppelklicke auf "DieseArbeitsmappe" im Projektfenster auf der linken Seite.
  4. Füge den folgenden Code ein:

    Private Sub Workbook_BeforePrint(Cancel As Boolean)
       ' Hier kannst Du Dein Makro aufrufen
       MsgBox "Das Makro wird jetzt vor dem Drucken ausgeführt!"
       ' Füge hier den Code Deines Makros ein
    End Sub
  5. Schließe den VBA-Editor und speichere Deine Datei als Makro-fähige Arbeitsmappe (mit der Endung .xlsm).

Jetzt wird das Makro jedes Mal ausgeführt, wenn Du die Datei druckst.


Häufige Fehler und Lösungen

  • Fehler: Das Makro wird nicht ausgeführt.

    • Lösung: Stelle sicher, dass Du den Code in das richtige Modul ("DieseArbeitsmappe") eingefügt hast.
  • Fehler: Der Druckdialog öffnet sich nicht.

    • Lösung: Überprüfe, ob die Cancel-Variable auf True gesetzt ist, um den Druckvorgang abzubrechen.

Alternative Methoden

Wenn Du kein VBA verwenden möchtest, kannst Du auch eine Schaltfläche in Deinem Excel-Blatt erstellen, die das Drucken und das Ausführen eines Makros kombiniert:

  1. Füge eine Schaltfläche über Entwicklertools > Einfügen > Schaltfläche (Formsteuerung) ein.
  2. Weise der Schaltfläche ein Makro zu, das sowohl druckt als auch andere gewünschte Aktionen ausführt.
  3. Beispiel für das Makro:

    Sub DruckenUndMakro()
       ' Hier kann Dein Makro-Code stehen
       MsgBox "Das Makro wird jetzt ausgeführt!"
       ' Druckbefehl
       ActiveSheet.PrintOut
    End Sub

Praktische Beispiele

Hier ist ein Beispiel, wie Du ein Makro für das Drucken von Rechnungen nutzen kannst:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Dim Rechnung As String
    Rechnung = "Rechnung für Kunde: " & Range("A1").Value
    MsgBox Rechnung
End Sub

Wenn Du nun die Datei druckst, wird eine Nachricht angezeigt, die den Kundennamen beinhaltet, bevor der Druckvorgang startet.


Tipps für Profis

  • Nutze Application.ScreenUpdating = False, um die Bildschirmaktualisierung während der Ausführung des Makros zu deaktivieren. Dies kann die Leistung verbessern.
  • Stelle sicher, dass Du Deine Makros gut dokumentierst, um die Wartung zu erleichtern.
  • Teste Deine Makros gründlich, bevor Du sie in einer Produktivumgebung verwendest.

FAQ: Häufige Fragen

1. Kann ich mehrere Makros vor dem Drucken ausführen?
Ja, Du kannst mehrere Makros in die Workbook_BeforePrint-Prozedur einfügen.

2. Was passiert, wenn ich den Druck abbreche?
Der Druck wird abgebrochen, wenn die Cancel-Variable auf True gesetzt wird.

3. Ist dieses Verfahren in allen Excel-Versionen verfügbar?
Ja, das VBA-Feature ist in allen aktuellen Excel-Versionen verfügbar, die Makros unterstützen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige