Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1276to1280
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
Inhaltsverzeichnis

AutoFilter mit ellenlanger Liste

AutoFilter mit ellenlanger Liste
Markus
Hallo,
ich habe eine Datenbank mit über 6000 Datensätzen.
Der AutoFilter funktioniert auch bestens, aber die Filterung ist meines erachtens viel zu kompliziert.
Wenn ich z.B. in der Spalte/Überschrift "Lieferschein" dann benutzerdefiniert, dann enthält, dann 37 wähle wäre doch sinnvoller, dies mit einem Makro zu lösen.
In der Insert-Box "37" eingeben und ein Makro springt zum Feld "Lieferschein" und übergibt dort die Option enthält und die Zahl 37.
Natürlich suche ich auch in den anderen Spalten, aber zu 95% aller Suchvorgänge suche ich immer in der Spalte "Lieferschein" mit "enthält".
Danke für eine Hilfeleistung
Markus

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: AutoFilter mit ellenlanger Liste
03.09.2012 14:48:13
{Boris}
Hi Markus,
ich mach sowas immer mit einer Textbox, reagiere auf das Change_Ereignis der Box und übergebe den Boxinhalt an den Autofilter.
Optimalerweise platziert man die Textbox oberhalb der Liste - in meinem Beispiel ist die Überschriftenzeile der Liste in Zeile 4 (dort ist auch der Autofilter aktiv).
Zieh Dir zudem noch eine Textbox aus den Steuerelementen auf (hier heißt sie TextBox1).
Dazu diesen Change-Code für die Box (es wird in Spalte A der Suchbegriff aus der Textbox gesucht - mit "enthält" - und zwar nach jedem Tastenanschlag):
Private Sub TextBox1_Change()
Dim Sb As String
Sb = Tabelle1.TextBox1.Text
If Sb  "" Then
Range("A4").AutoFilter Field:=3, Criteria1:="=*" & Sb & "*", Operator:=xlAnd
Else
If ActiveSheet.FilterMode Then ActiveSheet.ShowAllData
End If
ActiveWindow.ScrollRow = 5
End Sub

Anzeige
Uups - Gruß vergessen - also: VG, Boris :-) oT
03.09.2012 14:48:53
{Boris}
...

Minikorrektur
03.09.2012 15:10:09
{Boris}
Hi,
es wird in Spalte A der Suchbegriff ...
muss heißen: Es wird in Spalte C der Suchbegriff...
denn
Range("A4").AutoFilter Field:=3
referenziert nunmal auf Spalte C.
VG, Boris

SpezialFilter mit ellenlanger Liste
03.09.2012 14:56:46
Rudi
Hallo,
die Datensätze (Überschriften) beginnen in Zeile4
A1: =A4 und nach rechts kopieren
Zeile1 und 3 ausblenden, muss aber nicht.
Code im Tabellenmodul:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = 2 Then
If Application.CountA(Rows(2)) = 0 Then
If Me.FilterMode Then Me.ShowAllData
Else
Cells(4, 1).CurrentRegion.AdvancedFilter Action:=xlFilterInPlace, _
CriteriaRange:=Range(Cells(1, 1), Cells(2, Columns.Count).End(xlToLeft)), Unique:=False
End If
End If
End Sub

In Zeile 2 der Lieferschein-Spalte schreibst du jetzt z.B. *37* und schwups ...
Kriterien in anderen Spalten entsprechend.
Gruß
Rudi
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige