Druckbereich in Excel: Nur Zellen mit Inhalt drucken
Schritt-für-Schritt-Anleitung
Um nur die Zellen mit Inhalt in einem bestimmten Druckbereich in Excel zu drucken, kannst Du folgenden VBA-Code verwenden:
- Öffne Excel und gehe zu der Arbeitsmappe, in der Du den Druckbereich festlegen möchtest.
- Drücke
Alt + F11
, um den VBA-Editor zu öffnen.
- Doppelklicke auf "DieseArbeitsmappe" im linken Fenster.
- Füge den folgenden Code in das Fenster ein:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If ActiveSheet.Name = "Tabelle1" Then ' hier anpassen (Tabellennamen)
On Error GoTo ErrorHandler
Cancel = True
If Range("B150") = "" Then
Rows(Range("B150").End(xlUp).Row + 1 & ":" & 150).Hidden = True
End If
Application.EnableEvents = False
ActiveSheet.PrintOut
Rows("1:151").Hidden = False
Application.EnableEvents = True
Exit Sub
ErrorHandler:
Application.EnableEvents = True
MsgBox "Makrofehler"
End If
End Sub
- Schließe den VBA-Editor und teste den Druck.
Häufige Fehler und Lösungen
Alternative Methoden
Falls Du VBA nicht verwenden möchtest, kannst Du auch manuell den Druckbereich in Excel festlegen:
- Wähle den Bereich aus, den Du drucken möchtest.
- Gehe zu "Seitenlayout" > "Druckbereich" > "Druckbereich festlegen".
- Um nur bestimmte Zeilen zu drucken, musst Du die Zeilen mit leeren Zellen manuell ausblenden.
Praktische Beispiele
Angenommen, Du hast Daten in den Zellen B6 bis M150, und Du möchtest nur die Zeilen drucken, die Daten enthalten. Mit dem obigen VBA-Code wird automatisch der Druckbereich angepasst, sodass nur die relevanten Zeilen mit Inhalt gedruckt werden.
Tipps für Profis
- Nutze
Debug.Print
innerhalb des Codes, um den Status von Variablen zu überprüfen, falls Du auf Schwierigkeiten stößt.
- Halte Deine Makros dokumentiert, um später Anpassungen leichter vorzunehmen.
- Teste den Code in einer Kopie Deiner Arbeitsmappe, um Datenverlust zu vermeiden.
FAQ: Häufige Fragen
1. Kann ich den Druckbereich auch für andere Blätter anpassen?
Ja, Du musst lediglich den Tabellennamen im Code ändern, um ihn für andere Blätter anzupassen.
2. Funktioniert dieser Code in allen Excel-Versionen?
Der VBA-Code sollte in den meisten modernen Excel-Versionen (ab Excel 2007) funktionieren. Möglicherweise gibt es Unterschiede in der Benutzeroberfläche.