Clever-Excel-Forum

Normale Version: VBA Tabelle bei Eingabe automatisch erweitern
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Helloo, 

Ich habe ein Problem, unzwar habe ich über VBA einen Spezialfilter erstellt. Dieser soll dazu dienen, dass eine Tabelle (Tablle4) im ersten Tabellenblatt (Selektionsliste) anhand ihrer Werte gefiltert wird und die Werte automatisch in eine andere  Tabelle im nächsten Tabellenblatt (KWB) eingefügt werden. 

Der Filter funktioniert soweit, allerdings hätte ich es gerne, dass sich die Tabelle 1 mit Betätigung des Filters automatisch erweitert. Derzeit ist es so, dass die Werte sich unterhalb/außerhalb der Tabelle einfügen. 

Kennt jemand eine Lösung? 

Vielen Dank schonmal und Liebe Grüße 
Code:
Sub Filter()
'
' Filter Makro
' Filter: Wenn Summe >=6 in KWB
'
' Tastenkombination: Strg+Umschalt+F
'
    Sheets("KWB").Select
    Range("A1").Select
    Sheets("Selektionsliste").Range("Tabelle4[#All]").AdvancedFilter Action:= _
        xlFilterCopy, CriteriaRange:=Sheets("Kriterien").Range("A1:E2"), CopyToRange _
        :=Range("A1"), Unique:=False
End Sub
Hallöchen,

was ist eigentlich Tabelle 1 und wo ist unterhalb?
Moin, 

oh sorry, da war ich gestern wohl schon etwas durch und habe etwas unverständlich geschrieben. 
Ich lade mal eine Beispieldatei hoch... Tabelle 1 ist jetzt Tabelle 13, nicht wundern...

Also die Tabelle 4 im Tabellenblatt Selektionsliste wird regelmäßig um neue Tabellenzeilen erweitert. 
Sobald nun auch die neu eingetragenen Nummern die Summe von 6 überschreiten, werden diese mit Betätigung der "Filter"- Schaltfläche in die Tabelle 13 im Tabellenblatt KWB übertragen. 

Das Problem liegt darin, dass die Tabelle 13 mit den jetzigen Werten zwar als Tabelle formatiert ist, sobald neue Zeilen durch das Makro hinzugefügt werden, werden diese aber nicht mit in die Tabellen-Formatierung aufgenommen. 

Ist es so verständlicher?
Hallöchen,

Du könntest die Tabelle im Anschluss erweitern.

With Sheets("KWB")
.ListObjects("Tabelle13").Resize .Range("$A$1:$B$" & .Cells(Rows.Count, 1).End(xlUp).Row)
End With
Perfekt, Danke!!!

:28:
Reicht schon:
Code:
Sub M_Sortieren2()
  With Sheets("KWB")
    .ListObjects(1).Range.Sort .Cells(1), 1, Cells(1, 2), , , , , 1
  End With
End Sub
Es wäre besse deizes Makro im Makromodule des Arbeitsblattes 'KWB' zu setzen.

Verzichte auf 'Select" und 'Activate' in VBA.