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.

Liste nach Zelleigabe filtern...
#1
Hallo,
ich hab ne Liste welche nach Eingabe in Zelle L3 (Zahl)
die Liste beginnend von B2 bis ca. 1000 Zeilen
filtern soll...
Gefiltert soll nach den Werten in Spalte ab C7 (siehe Screenshot)
ich hab erst mit VBA begonnen und jede Menge Schrott
erstellt, der nicht funktioniert...
Bräuchte bitte Hilfe dazu...
Viele Grüße Wurstl

   
Antworten Top
#2
Moin Wurstl

Man kann es kompliziert machen.
Man kann es einfach machen.

Warum willst du es kompliziert machen?
Wir sehen uns!
... Detlef

Meine Beiträge können Ironie oder Sarkasmus enthalten.

Antworten Top
#3
Hi,

meinst du so:

Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
   
    If Target.Address = "$L$3" Then
   
        Dim FilterSpalte As Integer
        Dim FilterMich
       
        FilterSpalte = 2
        FilterMich = Range("L3")
       
        With ActiveSheet
            .Range("B6:F16").AutoFilter Field:=FilterSpalte, Criteria1:=FilterMich
            If Range("B6:F16").Columns(1).SpecialCells(xlCellTypeVisible).Cells.Count - 1 = 0 Then
                .ShowAllData
            End If
        End With
   
    End If
   
End Sub

Den "Range(...)" kann man natürlich "schöner" machen.
Herzliche Grüße aus dem Rheinland
Jörg

[Windows 10, Microsoft 365]
Antworten Top
#4
Hi,
vielen Dank erstmal. Nun hab ich mal folgenden Code gemacht, der auch funktioniert, jedoch
werden mir in allen Spalten diese blöden Filterpfeile gezeigt... Wie kriegt man denn sowas weg?
Der Befehl: VisibleDropDown:=False greift wohl hier nicht...

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
  If Target = Range("K3") Then
   
    If Tabelle1.Cells(3, 11) > 0 Then
      Tabelle1.AutoFilterMode = False

      Tabelle1.Range("A6").AutoFilter _
      Field:=2, _
      Criteria1:=Tabelle1.Range("K3").Value, _
      VisibleDropDown:=False
     
      Range("K3:L3").Select
    End If
   
    If Tabelle1.Cells(3, 11) = 0 Then
      Selection.AutoFilter
      Range("K3:L3").Select
    End If
  End If
End Sub
Antworten Top
#5
Hi,

du musst das Ausblenden der Pfeile für jede Spalte durchführen:

Dim rngZelle As Range
Dim ZeileA As Long
Dim ZeileE As Long
Dim SpalteA As Long
Dim SpalteE As Long

' Anfangszeile deines Bereichs:
ZeileA = ...

' Anfangsspalte deines Bereichs:
SpalteA = ...

' Endzeile deines Bereichs:
ZeileE = ...

' dein bisheriger Code ...

For Each rngZelle In Range(Cells(ZeileA, SpalteA), Cells(ZeileE, SpalteE))
    rngZelle.AutoFilter Field:=rngZelle.Column, Visibledropdown:=False
Next
Herzliche Grüße aus dem Rheinland
Jörg

[Windows 10, Microsoft 365]
Antworten Top
#6
vielen Dank Euch,
es funktioniert prima!!! Freu freu...
Merci!
VG Wurstl
Antworten Top


Gehe zu:


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