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.

Excel vba Autofilter mit mehr Kriterien
#1
Hallo zusammen,

könnt Ihr mir bitte einen Tipp geben wie dieses Makro erweitert werden muss um einen Autofilter auf diese Mehrfachauswahl zu setzen?
Also an Stelle der Messagebox-Anzeige soll der Filter auch gesetzt werden.

Code:
Sub AutofilterTest()
 'Funktioniert nur wenn die Zellselektion 2 oder mehr Zellen beinhaltet.
 Dim FilterArray As Variant, rngCell As Range, intI As Integer
 
 Set rngCell = Selection
 If rngCell.Rows.Count = 1 Then
   'Selektion in einer Zeile
   FilterArray = Application.Transpose(rngCell)
 Else
   'Selektion in Spalte(n)
   FilterArray = rngCell
 End If

 'Testanzeige
 For intI = LBound(FilterArray) To UBound(FilterArray)
   MsgBox FilterArray(intI, 1)
 Next

End Sub

Vielen Dank!
Mit freundlichen Grüßen / Best regards
                          //
----------o00o---°(_)°---o00o----------------------

Erich
Antworten Top
#2
Hallo,

anbei ein "gebastelet" Beispiel, gehe es im Einzelschrittmodus durch.

mfg


Angehängte Dateien
.xlsm   Autofilter Sharky.xlsm (Größe: 14,82 KB / Downloads: 7)
[-] Folgende(r) 1 Nutzer sagt Danke an Fennek für diesen Beitrag:
  • sharky51
Antworten Top
#3
Guten morgen Fennek,

danke für das Beispiel. Funktioniert!

Ich suche aber eine Möglichkeit, dass in einer Spalte die markierten Zellen als Filterkriterium herangezogen werden und auf diese Werte dann gefiltert wird.

Hast Du dazu noch eine mögliche Lösung?
Mit freundlichen Grüßen / Best regards
                          //
----------o00o---°(_)°---o00o----------------------

Erich
Antworten Top
#4
Hallo Erich,

schau Dir mal diesen Thread an.
http://www.clever-excel-forum.de/thread-...#pid117241

Statt der Sicherung auf dem zweiten Blatt müsste man nur die markierten Einträge nehmen.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • sharky51
Antworten Top
#5
Guten Morgen André,

vielen Dank für das Beispiel. Hab das mal ausprobiert - ist aber nicht das was ich eigentlich suche und benötige.
Im diesem Beispiel muss man im Autofilter-Dialog die Filterkriterien wie üblich explizit ankreuzen und den Filter dann über den Filter-Button setzen.

Ich suche aber die Möglichkeit in einer Spalte (oder mehreren Spalten) per Auswahl mit der Maus nur auf diese ausgewählten (markierten) Werte zu filtern und zwar ohne extra auf den Filter-Button in der Spalte zu klicken.

Vielleicht hast Du dazu noch ein praktikables Beispiel.

Vielen Dank und noch ein schönes WE!
Mit freundlichen Grüßen / Best regards
                          //
----------o00o---°(_)°---o00o----------------------

Erich
Antworten Top
#6
Hallo Erich,
Sub AutofilterMitSelektiertenZellen()
Dim rngArea As Range, rngCell As Range, lngZ As Long, strAF() As String
ReDim strAF(0 To Selection.Count - 1)
For Each rngArea In Selection.Areas
For Each rngCell In rngArea.Cells
strAF(lngZ) = rngCell.Value
lngZ = lngZ + 1
Next rngCell
Next rngArea
ActiveSheet.Range("$A$1:$B$20").AutoFilter Field:=2, Criteria1:=strAF, Operator:=xlFilterValues
End Sub
Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • sharky51
Antworten Top
#7
Hallo Erich,

in dem Beispiel wird mit dem einen Button der zuvor eingestellte Autofilter auf einem Blatt gesichert. Dieses Makro brauchst Du nicht. Im zweiten Makro werden dann die Zellinhalte genommen und der Filter neu gesetzt. Setzte den Filter zuvor zurück, dass nix mehr angehakelt ist, und Du wirst sehen, es passt erst mal Smile Das man das dann auf die selektierten Zellen umprogrammieren müsste, hatte ich geschrieben. Aber vielleicht reicht Dir Uwe's Code Smile
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
[-] Folgende(r) 1 Nutzer sagt Danke an schauan für diesen Beitrag:
  • sharky51
Antworten Top
#8
Hallo Uwe,

das ist cool... vielen Dank genau das habe ich gesucht, danke!
Mit freundlichen Grüßen / Best regards
                          //
----------o00o---°(_)°---o00o----------------------

Erich
Antworten Top


Gehe zu:


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