Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Weiterverarbeitung von Autofilterdaten
#1
Hallo,

ich setze folgenden Code für die Weiterverarbeitung meines mit dem Autofilter gefundenen Daten ein:

Sheets("Tabelle1").Range("C2:C30000").AutoFilter 1, "*Bremsschläuche*"
Sheets("Tabelle1").Range("C2:C30000").SpecialCells(xlCellTypeConstants).Copy Sheets("Tabelle2").Cells(1, 1)
(Anmerkung: Ich fange bei C2 an, damit ich den Header nicht bei meiner Auswahl habe)

So weit, so gut, so unzureichend. Auch wenn ich damit wunderbar meine gefundenen Daten nach Tabelle2 kopieren kann, fehlt mir doch das entsprechende VBA
Wissen, für die von mir gewünschte Weiterverbeitung in VBA.

Deshalb jetzt gleich mal, meine erste Frage:
Die gefilterten Daten möchte ich gerne in ein Feld schreiben. Wie mache ich das?
Felddimensionierung, Aufnahme der Filterdaten etc.

Danke für eure Hilfe.
Antworten Top
#2
Hallo,

nur ein kleiner Tip:


Code:
with Sheets("Tabelle1").Range("C2:C30000")
    .AutoFilter 1, "*Bremsschläuche*"
    .copy sheets(2).cells(1,1)
end with

Üblicher wäre aber:


Code:
sub Test()
with sheets(1).currentregion
  .autofilter 3, "*Bremsschläuche*"
  .offset(1).copy sheets(2).cells(1)
end with
end sub


natürlich ungetesstet.

mfg
Antworten Top
#3
Hallöchen,

wenn Du Deine Daten auf dem Blatt in eine Tabelle wandelst, geht das im Prinzip so:

Code:
With Sheets("Bremsschläuche").ListObjects("Tabelle1")
        .Range.AutoFilter Field:=2, Criteria1:= "irgendwelche Schläuche :-)"
        .DataBodyRange.Columns("A:D").SpecialCells(xlCellTypeVisible).Copy
End With

Der Vorteil der Tabellen ist hier auch, dass Du Dir keine Gedanken machen musst, ob der Bereich groß genug gewählt ist. Die Tabelle zieht ja automatisch bei neuen Einträgen nach. Der Header spielt hier auch keine Rolle, weil Du den DataBodyRange nimmst.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste