Guten Tag zusammen,
ich versuche jetzt schon etwas länger ( mit google Ergebnissen ) mir ein Excell-Sheet zusammen zu bauen welche anhand der vorhandenen Monate im aktuellen Jahr (Spalte A1 - Je nach Fortschritt des Jahres werden es mehr werden) diese filtert und die gefilterteten Daten dann jeweils in ein neues Sheet einfügt.
Sprich aktuell wären es ca 150 Einträge in diesem Tabellenblatt1 welche die Monate Januar, Februar & März enthalten.
Diese sollen nun pro Monat, der Reihe nach, in ein neues Sheet kopiert werden.
Den code den ich bis jetzt zusammen gebastelt habe macht dies nur halb. Da er nur mit dem Autofilter xlFilterLastMonth abruft und dann in ein neues Dokument schreibt.
Option Explicit
Sub Filtern_Kopieren()
'Variablen dimensionieren
Dim rng As Range
Dim wb_new As Workbook
'Tabelle in Range einlesen
Set rng = Tabelle1.ListObjects("Tabelle1").Range
'Autofilter setzen
rng.AutoFilter Field:=1, Criteria1:= _
xlFilterLastMonth, Operator:=xlFilterDynamic
'Neue Arbeitsmape erstellen
Set wb_new = Workbooks.Add
'Gefilterte Tabelle in die neue Arbeitsmappe kopieren
rng.SpecialCells(xlCellTypeVisible).Copy wb_new.Worksheets(1).Range("A5")
'Neue Arbeitsmappe speichern und schließen
wb_new.Close True, ThisWorkbook.Path & "\Ausgaben_" & Format(Now, "mm.yyyy") & ".xlsx"
End Sub
Hat jemand einen Denkanstoß wie man es machen könnte? Schleifen behersche ich leider nicht :D und sonst sehen meine VBA Kenntnisse eher mau aus :D
|