Microsoft Excel

Herbers Excel/VBA-Archiv

AutoFilter per VBA


Betrifft: AutoFilter per VBA von: Andreas
Geschrieben am: 28.09.2019 06:08:53

Hallo Leute,

was mache ich mit dem Code falsch?

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "H2" Then
         ActiveSheet.Range("$B$4:$M$1500").AutoFilter Field:=3, Criteria1:=Target.Value
    End If
End Sub
Ich möchte in "H2" ein Datum eingeben. Und dann soll der Autofilter den Rest machen. Leider gibt er mir kein Filterergebnis zurück.

  

Betrifft: AW: AutoFilter per VBA von: Hajo_Zi
Geschrieben am: 28.09.2019 07:15:21

diese Zeile
If Target.Address = "H2" Then
trifft niemals zu da Target.Address "$H$2" geprüft werden soll.

GrußformelHomepage


  

Betrifft: AW: AutoFilter per VBA von: Luschi
Geschrieben am: 28.09.2019 09:02:07

Hallo Andreas,

Hajo hat schon den Finger die offene Wunde gelegt, hier aber noch ein paar Ergänzungen:
- If Target.Address = "$H$2" Then
- If Target.Address(1, 1) = "$H$2" Then
- If Target.Address(True, True) = "$H$2" Then
- If Target.Address(0, 0) = "H2" Then
- If Target.Address(False, False) = "H2" Then
- If Not (Intersect(Target, [H2]) Is Nothing) Then
- If Not (Intersect(Target, Range("H2")) Is Nothing) Then

Da jedes Tabellenblatt nur einen Autofilter haben kann, stellt Vba dafür auch eine Methode _ bereit, ohne daß man wissen muß, wie der Addreßbereich lautet, deshalb sieht das bei mir aus:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address(1, 1) = "$H$2" Then
         ActiveSheet.AutoFilter.Range.AutoFilter Field:=3, Criteria1:=Target.Value
    End If
End Sub
Gruß von Luschi
aus klein-Paris


  

Betrifft: AW: AutoFilter per VBA von: Andreas
Geschrieben am: 28.09.2019 13:37:57

ich glaube ich mache wieder was falsch. ich habe jetzt alle Varianten ausprobiert und das Ergebnis ist das gleich, keins.

Excel versucht ja was zu filtern, aber komischerweise nicht das was ich will.


  

Betrifft: AW: AutoFilter per VBA von: Hajo_Zi
Geschrieben am: 28.09.2019 13:46:25

Zu Deiner Datei kann ich nichts schreiben, was wohl daran liegt das ich nicht auf fremde Rechner schaue.

Gruß Hajo


  

Betrifft: Filter nach Datum... von: Boris
Geschrieben am: 29.09.2019 09:54:40

Hi,

...kann manchmal etwas tricky sein. Versuch mal, das Filterkriterium in einen Long-Wert umzuwandeln:

Criteria1:=CLng(Target.Value)

Falls nicht, zeig mal deine Datei.

VG, Boris


Beiträge aus dem Excel-Forum zum Thema "AutoFilter per VBA"