Microsoft Excel

Herbers Excel/VBA-Archiv

Daten filtern und auf neues Blatt kopieren

Betrifft: Daten filtern und auf neues Blatt kopieren von: TomTom
Geschrieben am: 08.08.2008 09:58:52

Hi,

ich habe eine Exceldatei mit zwei Tabellenblättern. Auf dem ersten befinden sich Daten. Auf dem zweiten befindet sich eine Ablage.
Ich möchte nun Daten mit einer bestimmten Kategorie filtern , kopieren und auf des tabellenblatt ABLAGE kopieren.
Als Beispiel: Alle Datensätze, die die in der Spalte TYP = "BMW" drin stehen haben, sollen in das Tabellenblatt "ABLAGE" kopieret werden (Startzelle in Ablage soll C7 sein, nicht A1)

Hier mal eine Beispieldatenbank:

https://www.herber.de/bbs/user/54441.xls

Gruss
Tom

  

Betrifft: AW: Daten filtern und auf neues Blatt kopieren von: Klaus M.vdT.
Geschrieben am: 08.08.2008 10:32:34

Hi Tom,

-markiere im Blatt "Daten" die Zelle C1,
-clicke im Menü auf "Daten-Filter-Autofilter"
-clicke den kleinen DropDown Pfeil, der in C1 erscheint
-wähle "BMW" aus dieser Liste
-die gefilterten Zeilen markieren, kopieren und in die Ablage an gewünschter Stelle einfügen

Grüße,
Klaus M.vdT.


  

Betrifft: Sorry, wollte es per Makro von: TomTom
Geschrieben am: 08.08.2008 10:41:14

Hi,

sorry, ich hatte vergessen zu erwähnen, dass ich das ganze per Makro machen wollte.

Gruss
Tom


  

Betrifft: AW: Sorry, wollte es per Makro von: {mskro}
Geschrieben am: 08.08.2008 11:05:09

Hallo Tom,
dann nehme den Makrorecorder und zeichne die beschriebenen Schritte von "Klaus M.vdT." einfach auf.

Gruß Manfred


  

Betrifft: Da kommt eine Fehlermeldung von: TomTom
Geschrieben am: 08.08.2008 11:38:27

Hi,

wenn ich dass mit dem Macrorecoder mache, kommt folgendes zustande:

Range("C1").Select
Selection.AutoFilter
Selection.AutoFilter Field:=3, Criteria1:="BMW"
Cells.Select
Selection.Copy
Sheets("Ablage").Select
Range("A1").Select
ActiveSheet.Paste
Range("A1").Select

Wenn ich das Makro dann ausführe , bringt es mir immer eine Fehlermeldung:

"Die Select Methode des Range-Objektes konnte nicht ausgeführt werden:

Range("A1").Select


was mache ich falsch ?

danke Tom


  

Betrifft: Probiere es mal so von: Backowe
Geschrieben am: 08.08.2008 12:10:30

Hi,

VBA-Code:
Sub ZeilenKopieren()
Dim i As Long, j As Long
j = 7
For i = 2 To Sheets("Daten").Cells(Rows.Count, "C").End(xlUp).Row
  If Sheets("Daten").Cells(i, "C") = "BMW" Then
    Range(Cells(i, "A"), Cells(i, "F")).Copy _
      Destination:=Sheets("Ablage").Range("C" & j)
    j = j + 1
  End If
Next
End Sub
Code eingefügt mit Syntaxhighlighter 4.15


Gruss Jürgen


  

Betrifft: AW: Da kommt eine Fehlermeldung von: {mskro}
Geschrieben am: 08.08.2008 13:03:13

Hallo Tom,
um bei deiner Aufzeichnung zu bleiben, versuche es mal so.

Sub Test()
    Sheets("Daten").Cells.AutoFilter
    Selection.AutoFilter Field:=3, Criteria1:="BMW"
    Cells.Copy
    Sheets("Ablage").Select
    Range("A1").Select
    ActiveSheet.Paste
    Sheets("Daten").Select
    Application.CutCopyMode = False
    Selection.AutoFilter
    Range("A1").Select
End Sub


Gruß Manfred


  

Betrifft: AW: Daten filtern und auf neues Blatt kopieren von: Tom
Geschrieben am: 08.08.2008 11:46:37

Wenn du das nur der Übersichtlichkeit wegen macht, kannst du auch die Tabelle als Liste ausführen dann filtert er die Werte je nach wunsch, ansonsten war dieser Beitrag sinnlos.

mfg Tom


 

Beiträge aus den Excel-Beispielen zum Thema "Daten filtern und auf neues Blatt kopieren"