Anzeige
Archiv - Navigation
1444to1448
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Autofilter - mehrere bedingungen
07.09.2015 13:45:59
Sven
Hi zusammen,
ich hänge und hofe auf Hilfe.
Per VBA möchte ich meine Tabelle filtern.
Mit einem kriterium funktioniert das gut, ledier weiß ich nicht wie cih die Abhängigkeit von mehreren filtern umsetzen kann.
Hier mein Code soweit:
Private Sub Suche_2_Enter_Click()
Dim Var1, Var2, Var3, Var4, Var5, Var6, Var7, Var8, Var9 As Variant
With Worksheets("Tabelle2")
If Auswahl_PCIe.Value = True Then
Var1 = "PCIe"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=12, Criteria1:=Var1
Else
End If
If Auswahl_SATA.Value = True Then
Var2 = "SATA"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=12, Criteria1:=Var2
Else
End If
If Auswahl_SAS.Value = True Then
Var3 = "SAS"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=12, Criteria1:=Var3
Else
End If
If Auswahl_M2.Value = True Then
Var4 = "M.2"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=14, Criteria1:=Var4
Else
End If
If Auswahl_Enterprise.Value = True Then
Var5 = "Enterprise"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=18, Criteria1:=Var5
Else
End If
If Auswahl_AIC.Value = True Then
Var6 = "AIC"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=14, Criteria1:=Var6
Else
End If
If Auswahl_NVMe.Value = True Then
Var7 = "Yes"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=13, Criteria1:=Var7
Else
End If
If Auswahl_Client.Value = True Then
Var8 = "Client"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=18, Criteria1:=Var8
Else
End If
If Auswahl_Industrie.Value = True Then
Var9 = "Industrie"
Selection.autofilter
ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=18, Criteria1:=Var9
Else
'Selction.autofilter
'    ActiveSheet.Range("$A$3:$AU$9").autofilter Field:=18
End If
End With
End Sub
Solange nur ein Kriterium greift, kein Problem. Zum Beispiel, wenn ich nach "Client" filter habe ich 4 Ergebnisse - zudem möchte ich aber noch nach "PCIe" oder "SATA" filtern. Es bleiben jedoch alle filter Ergebnisse stehen die bereits mit "Client" gefiltert wurden.
Für Hilfe wäre ich sehr dankbar.
Gruß
Sven

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter - mehrere bedingungen
07.09.2015 14:40:44
ChrisL
Hi Sven
Nachfolgend zwei "Ansätze" zum weiter basteln.
Beispiel 1:
Zwei unterschiedliche Felder, aber mit vereinfachtem Code.
Private Sub CommandButton1_Click()
With Worksheets("Tabelle2")
.Range("A1:D5").AutoFilter
If CheckBox1 Then .Range("A1:D5").AutoFilter Field:=1, Criteria1:="x"
If CheckBox2 Then .Range("A1:D5").AutoFilter Field:=2, Criteria1:="y"
End With
End Sub

Beispiel 2:
Zwei unterschiedliche Kriterien im gleichen Feld.
Private Sub CommandButton1_Click()
Dim Var1 As String, Var2 As String
With Worksheets("Tabelle2")
.Range("A1:D5").AutoFilter
If CheckBox1 Then Var1 = "x"
If CheckBox2 Then Var2 = "y"
.Range("A1:D5").AutoFilter Field:=1, Criteria1:=Var1, Operator:=xlOr, Criteria2:=Var2
End With
End Sub
cu
Chris

Anzeige
AW: Autofilter - mehrere bedingungen
08.09.2015 10:55:09
Sven
Hi Chris,
vielen Dank für die Hilfestellung. Dein Code macht was er soll.
Ich glaube aber ich muss gänzlich umdenken, 12 Bedingungen per Checkbox und es wird sehr umständlich.
Aber trotzdem Danke, damit kann ich weiterarbeiten :)
Gruss
Sven

283 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige