Autofilter per VBA auswählen und drucken
Schritt-für-Schritt-Anleitung
Um den Autofilter per VBA auszuwählen und die gefilterten Daten zu drucken, kannst du folgenden VBA-Code verwenden. Dieser Code durchläuft die Begriffe in Spalte "B", filtert die Daten und druckt sie anschließend.
-
Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.
-
Klicke auf "Einfügen" und wähle "Modul", um ein neues Modul zu erstellen.
-
Kopiere den folgenden Code in das Modul:
Sub Filterdruck()
On Error GoTo Fehler
Dim TB1, TB2, i As Integer, LR As Integer
Set TB1 = Sheets("Tabelle1")
Set TB2 = Sheets.Add(After:=Sheets(Sheets.Count))
With TB1
If .FilterMode Then .ShowAllData ' Autofilter alle
.Columns("B:B").Copy TB2.Cells(1, 1)
TB2.Columns(1).RemoveDuplicates Columns:=1, Header:=xlYes
LR = TB2.Cells(TB2.Rows.Count, 1).End(xlUp).Row ' letzte Zeile der Spalte
For i = 2 To LR
.Columns(2).AutoFilter Field:=1, Criteria1:=TB2.Cells(i, 1)
TB1.PrintOut Preview:=True
Next
.ShowAllData
End With
Application.DisplayAlerts = False
TB2.Delete
Err.Clear
Fehler:
Application.DisplayAlerts = True
If Err.Number <> 0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
-
Schließe den VBA-Editor und gehe zurück zu Excel.
-
Führe das Makro aus, um die gefilterten Daten zu drucken.
Häufige Fehler und Lösungen
Alternative Methoden
Falls du eine alternative Methode bevorzugst, kannst du die Filterung und das Drucken auch manuell durchführen:
- Aktiviere den Autofilter über das Menü "Daten" > "Filtern".
- Wähle die gewünschten Kriterien in Spalte "B".
- Gehe zu "Datei" > "Drucken", um die gefilterten Daten anzuzeigen und zu drucken.
Diese Methode eignet sich gut, wenn du keine VBA-Kenntnisse hast oder kleinere Datenmengen verarbeiten möchtest.
Praktische Beispiele
Angenommen, du hast folgende Daten in Spalte "B":
| B |
| Haus |
| Garten |
| Balkon |
| Terrasse |
Mit dem obigen VBA-Skript wird jeder dieser Begriffe nacheinander gefiltert und die entsprechenden Zeilen werden in der Druckvorschau angezeigt. Du kannst dann entscheiden, ob du die gefilterten Daten drucken möchtest.
Tipps für Profis
-
Optimiere den Code: Du kannst den VBA-Code anpassen, um spezifische Seitenränder, Druckeinstellungen oder einen bestimmten Drucker festzulegen.
-
Nutze die Bildschirmausgabe: Füge TB1.PrintOut Preview:=True ein, um eine Vorschau vor dem Drucken anzuzeigen.
-
Fehlerbehandlung: Implementiere eine robustere Fehlerbehandlung, um spezifische Fehlerursachen herauszufinden, falls das Drucken fehlschlägt.
FAQ: Häufige Fragen
1. Warum wird die Druckvorschau nicht korrekt angezeigt?
Die häufigste Ursache ist, dass Druckbereiche in den Seiteneinstellungen festgelegt sind. Überprüfe die Druckeinstellungen und entferne alle festgelegten Druckbereiche.
2. Kann ich das Skript für andere Spalten verwenden?
Ja, du kannst das Skript anpassen, indem du die Spaltennummer in der AutoFilter-Methode änderst. Achte darauf, dass du die entsprechenden Spalten in deinem Datenbereich verwendest.
3. Funktioniert das Skript in Excel für Mac?
Die oben genannten VBA-Codes sollten auch in Excel für Mac funktionieren, allerdings kann die Benutzeroberfläche leicht abweichen.