VBA ListBox Formel jeweils für jeden Eintrag
#1
Hallo,

ich habe eine ListBox mit 6 Einträgen, die zu einer anderen ListBox führen, bei der man einige Daten anklicken kann. Das hab ich so für einen Filter in einer Userform gemacht.
Wenn jetzt der erste Eintrag aus der ersten ListBox gewählt wird, soll diese Formel laufen: 

Code:
Sheets("Tabelle1).Range("Daten").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sheets("Daten2").Range( _
"I2:K39"), CopyToRange:=Sheets("Daten3").Range("B17:M19"), Unique:=False
Wenn der zweite Eintrag in der ListBox gewählt wird, soll die Formel laufen:
Code:
Sheets("Tabelle2").Range("Daten4").AdvancedFilter Action:=xlFilterCopy, CriteriaRange:=Sheets("Daten5").Range( _
"I2:K39"), CopyToRange:=Sheets("Daten6").Range("B19:K19"), Unique:=False

und so weiter...

Beim ersten Eintrag schaffe ich es noch. Ich schaffe es aber nicht, die anderen Formeln mit den anderen ListBox Einträgen zu verknüpfen.

Ist es möglich, dass ich in VBA sage, wenn in ListBox1 ("Test2") ausgewählt wird, soll die erste Formel starten und wenn in ListBox1 ("Test3") ausgewählt wird die zweite Formel.

Wäre für eure Hilfe sehr dankbar.

Viele Grüße

MiBi
Top
#2
Hallo,
  Select Case ListBox1.Value
Case "Test2"
Sheets("Tabelle1").Range("Daten").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("Daten2").Range("I2:K39"), _
CopyToRange:=Sheets("Daten3").Range("B17:M19"), Unique:=False
Case "Test3"
Sheets("Tabelle2").Range("Daten4").AdvancedFilter Action:=xlFilterCopy, _
CriteriaRange:=Sheets("Daten5").Range("I2:K39"), _
CopyToRange:=Sheets("Daten6").Range("B19:K19"), Unique:=False
End Select
Gruß Uwe
Top
#3
Danke nochmal Uwe. Jetzt erscheint allerdings das nächste Problem -.-
Mit dem Code filtere ich ja die Daten aus verschiedenen Tabellen. Wenn ich nun aus der ListBox einen anderen Eintrag wähle, erscheint eine Fehlermeldung, weil die anderen Daten nicht die selbe Spaltenanzahl haben und er den alten Filter nicht überschreiben will oder kann. Kann ich, wenn ich einen anderen ListBox Eintrag wähle, die Daten von dem Filter davor löschen ? Ich hoffe du verstehst was ich meine :D Also das bei dem Code B17:M19 gelöscht wird und dann der nächste Filter auch bei B17:M19 beginnen kann.
Top


Gehe zu:


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