Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1676to1680
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
Filter für Spalte
05.03.2019 12:01:29
sigrid
Hallo zusammen,
ich bin auf der Suche nach einer Filtermöglichkeit nur für eine
bestimmte Spalte.
(Für das sortieren hab ich sowas gefunden)
Ich möchte gern, wenn der Courser auf einer Spalte steht, beim anklicken
eines Button eine Textbox geöffnet wird und ich den Suchbegriff
für die selektierte Spalte eingeben kann.
Meine Kopfzeile ist in Zeile 2, geht bis Spalte 18.
Gibt es sowas ?
mfg sigrid

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Filter für Spalte
05.03.2019 12:35:30
{Boris}
Hi,
ich platziere mir oft oberhalb der Spalte ein Textfeld, bei dem mittels Change-Ereignis der Filtervorgang angestoßen wird.
Nach diesem Muster:
Ins Klassnmodul ds entspechenden Blattes:
Private Sub TextBox21_Change()
Call Filtern(Me.TextBox21.Text, 2)
End Sub
In ein allgemeines Modul:
Sub Filtern(s As String, l As Long)
Tabelle1.Unprotect
Application.ScreenUpdating = False
If s  "" Then
Range("A37").AutoFilter Field:=l, Criteria1:="=*" & s & "*", Operator:=xlAnd
Else
If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData
End If
Tabelle1.Protect AllowFiltering:=True
Application.ScreenUpdating = True
End Sub
Im Beispiel geht der Filtervorgang in Zeile 37 los - das muss Du anpassen. Ebenfalls den Namen der Textbox sowie die zu filternde Spalte (im Beispiel: 2)
VG, Boris
Anzeige
AW: Filter für Spalte
05.03.2019 13:45:40
sigrid
Hallo Boris,
ich würde gern das Makro mit einem Button oder OptionB durchführen.
und es soll in der aktiven Spalte durchgeführt werden, wo der Courser steht.
mfg sigrid
AW: Filter für Spalte
05.03.2019 12:54:51
Werner
Hallo Sigrid,
so:
Public Sub Spalte_filtern()
Dim strSuchbegriff As String
strSuchbegriff = InputBox("Bitte Suchbegriff eingeben", "Filtern nach")
If Not strSuchbegriff = vbNullString Then
Columns(Selection.Column).AutoFilter field:=1, Criteria1:=strSuchbegriff
End If
End Sub
Gruß Werner
AW: Filter für Spalte
05.03.2019 13:43:57
sigrid
Hallo Werner,
hab mal eingesetzt:
Private Sub OptionButton1_Click()
Spalte_filtern
OptionButton1.Value = False
End Sub

Ab Zeile 3 stehen bei mir die Daten, bis zur Spalte 18.
Public Sub Spalte_filtern()
Dim strSuchbegriff As String
strSuchbegriff = InputBox("Bitte Suchbegriff eingeben", "Filtern nach")
If Not strSuchbegriff = vbNullString Then
Columns(Selection.Column).AutoFilter field:=3, Criteria1:=strSuchbegriff
End If
End Sub
Es kommt eine Fehlermeldung:
Laufzeitfehler 1004, Die Autofilter-Methode des Range-Objektes konnte nicht ausgeführt werden.
In der Tabelle ist kein Schutz enthalten.
mfg
sigrid
Anzeige
AW: Filter für Spalte
05.03.2019 14:21:13
Werner
Hallo Sigrid,
das Makro macht genau das was du im Eingangsbeitrag wolltest.
Du wählst eine Zelle aus, klickst auf den Button, Eingabemaske öffnet sich, Spalte der aktiven Zelle wird gefiltert.
Wo kommt jetzt plötzlich der OptionButton her?
Gruß Werner
AW: Filter für Spalte
05.03.2019 15:50:12
sigrid
Hallo Werner,
habe OptionButton wieder rausgenommen und ein Button erstellt.
Es funktioniert aber die Titelzeile 2 wird gelöscht, hatte mal anstatt 1 eine 2 eingegeben,
da kam die Fehlermeldung.
mfg sigrid
AW: Filter für Spalte
05.03.2019 15:50:13
sigrid
Hallo Werner,
habe OptionButton wieder rausgenommen und ein Button erstellt.
Es funktioniert aber die Titelzeile 2 wird gelöscht, hatte mal anstatt 1 eine 2 eingegeben,
da kam die Fehlermeldung.
mfg sigrid
Anzeige
Es sollte Zeile 1 + 2 sichtbar bleiben !
05.03.2019 15:55:33
sigrid
Hallo Werner,
habe getestet, als klappt soweit aber die Zeile 2 ist weg, meine Titel stehen darin.
mfg sigrid
AW: Es sollte Zeile 1 + 2 sichtbar bleiben !
05.03.2019 16:12:39
Werner
Hallo Sigrid,
so:
Public Sub Spalte_filtern()
Dim strSuchbegriff As String, loLetzte As Long
strSuchbegriff = InputBox("Bitte Suchbegriff eingeben", "Filtern nach")
If Not strSuchbegriff = vbNullString Then
loLetzte = Cells(Rows.Count, Selection.Column).End(xlUp).Row
Range(Cells(2, Selection.Column), Cells(loLetzte, Selection.Column)) _
.AutoFilter field:=1, Criteria1:=strSuchbegriff
End If
End Sub
Gruß Werner
Super Werner, danke ! --))
05.03.2019 17:28:13
sigrid
Gerne u. Danke für die Rückmeldung. o.w.T.
05.03.2019 18:56:10
Werner

186 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige