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

Forumthread: gefilterte Tabelle in neues Blatt kopieren

gefilterte Tabelle in neues Blatt kopieren
Joachim
Hallo,
ich filtere über den Autofilter eine Tabelle und möchte diese gefilterten Daten in ein neues Blatt kopieren.
Den Code für den Autofilter hab ich per Makro-Aufzeichnung erstellt. Doch beim Tabellenblatt/kopieren wird die ganze Tabelle kopiert.
Ist sicherlich nicht sehr aufwendig.
Gruss
Joachim
Anzeige
AW: gefilterte Tabelle in neues Blatt kopieren
17.02.2010 10:07:16
Beate
Hallo Joachim,
Guckst Du: Gefilterte Listen kopieren
Gruß,
Beate
AW: gefilterte Tabelle in neues Blatt kopieren
17.02.2010 11:13:39
Christian
Hallo Beate,
bei dem Code ist IMHO ein kleiner Fehler...
Wenn zB der Filter-Bereich in Spalte B beginnt und in Spalte B gefiltert wird dann wird auch Spalte A kopiert.
siehe Bsp. Hier zur Demo statt copy mit select - setze Haltepunkt bei .Range(.Range...
https://www.herber.de/bbs/user/68062.xls
viele Grüße
Christian
Anzeige
@Christian
17.02.2010 16:43:26
Beate
Danke Christian,
ich werde Max darauf aufmerksam machen.
Gruß,
Beate
AW: gefilterte Tabelle in neues Blatt kopieren
17.02.2010 10:07:39
Hajo_Zi
Hallo Joachim,
nach dem markieren Gehe zu, Inhalte, Sichbare

AW: gefilterte Tabelle in neues Blatt kopieren
17.02.2010 10:08:44
Ramses
Hallo
So geht das
Sub Copy_Filter_Range()
Dim chkRng As Range
'Datenbereich noch genau definieren
Set chkRng = Range("A1:D200")
chkRng.SpecialCells(xlCellTypeVisible).Copy Worksheets("Tabelle wo das hin soll").Cells(1, 1)
End Sub
gruss Rainer
Anzeige
AW: gefilterte Tabelle in neues Blatt kopieren
17.02.2010 10:23:57
Joachim
Hallo Rainer,
dein Code sehr kurz und knackig - genau richtig.
Da es die Zieltabelle noch nicht gibt, hab ich die vorher erstellt und kopiere nun die gefilterten Daten.
Danke.
Gruss
Joachim
AW: gefilterte Tabelle in neues Blatt kopieren
18.02.2010 19:55:50
Kuwe
Hallo Joachim,
bei mir geht auch sowas:

Sub AF_Kopieren()
ActiveSheet.AutoFilter.Range.Copy Sheets("Tabelle2").Range("A1")
End Sub
Gruß Uwe
Anzeige

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Gefilterte Tabelle in ein neues Blatt kopieren


Schritt-für-Schritt-Anleitung

Um gefilterte Daten in ein neues Tabellenblatt zu übertragen, kannst du ein einfaches VBA-Skript verwenden. Hier ist eine Schritt-für-Schritt-Anleitung:

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

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code ein:

    Sub Copy_Filter_Range()
        Dim chkRng As Range
        ' Datenbereich noch genau definieren
        Set chkRng = Range("A1:D200")
        chkRng.SpecialCells(xlCellTypeVisible).Copy Worksheets("Tabelle wo das hin soll").Cells(1, 1)
    End Sub
  4. Stelle sicher, dass der Zielarbeitsblattname in der Zeile Worksheets("Tabelle wo das hin soll") korrekt angegeben ist.

  5. Schließe den VBA-Editor und führe das Makro aus, indem du ALT + F8 drückst und dein Makro auswählst.

Mit diesem Skript werden die gefilterten Daten in das angegebene Tabellenblatt kopiert.


Häufige Fehler und Lösungen

  • Fehler: "Nur gefilterte Daten können in das aktive Blatt kopiert werden."

    • Lösung: Stelle sicher, dass du den richtigen Bereich mit SpecialCells(xlCellTypeVisible) angibst und dass der Autofilter aktiv ist.
  • Fehler: Das gesamte Tabellenblatt wird kopiert.

    • Lösung: Überprüfe deinen Code und stelle sicher, dass du nur den gefilterten Bereich kopierst, wie im obigen Beispiel gezeigt.

Alternative Methoden

Es gibt verschiedene Möglichkeiten, gefilterte Daten in ein neues Tabellenblatt zu übertragen:

  1. Copy-Paste Methode:

    • Markiere die gefilterten Daten, drücke CTRL + C, wechsle zu dem neuen Blatt und drücke CTRL + V.
  2. Automatisierung mit VBA:

    • Verwende den Code aus der Schritt-für-Schritt-Anleitung. Eine weitere Möglichkeit ist, die ActiveSheet.AutoFilter.Range.Copy Methode zu verwenden.
    Sub AF_Kopieren()
        ActiveSheet.AutoFilter.Range.Copy Sheets("Tabelle2").Range("A1")
    End Sub

Praktische Beispiele

  • Beispiel 1: Du hast eine Tabelle mit Verkaufsdaten und möchtest nur die Verkäufe aus einem bestimmten Monat in ein neues Blatt kopieren. Setze einen Filter auf das Datum und nutze den VBA-Code, um die gefilterten Daten zu übertragen.

  • Beispiel 2: Wenn du eine gefilterte Liste von Kundenadressen in ein anderes Tabellenblatt kopieren möchtest, kannst du die oben beschriebenen Methoden anwenden, um die Daten effizient zu übertragen.


Tipps für Profis

  • Überlege, wie du deine VBA-Skripte optimieren kannst, indem du Parameter für den Datenbereich und das Zielblatt hinzufügst. Das macht deinen Code flexibler.

  • Nutze die Möglichkeit, gefilterte Daten automatisch in ein neues Tabellenblatt zu übertragen, indem du die Skripte in ein Arbeitsblatt-Ereignis integrierst, wie Workbook_Open.

  • Speichere deine gefilterte Tabelle regelmäßig, um sicherzustellen, dass du immer die aktuellsten Daten hast.


FAQ: Häufige Fragen

1. Frage
Wie kann ich gefilterte Daten in eine neue Tabelle einfügen?
Antwort: Du kannst den SpecialCells(xlCellTypeVisible) Befehl in VBA verwenden, um nur die sichtbaren (gefilterten) Zellen zu kopieren und in eine neue Tabelle einzufügen.

2. Frage
Kann ich gefilterte Daten automatisch in ein neues Tabellenblatt übertragen?
Antwort: Ja, du kannst ein VBA-Makro verwenden, um dies zu automatisieren. Verwende den oben genannten Code und passe ihn an deine Bedürfnisse an.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige