Anzeige
Archiv - Navigation
800to804
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
800to804
800to804
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Autofilter

Autofilter
15.09.2006 10:03:30
Wrobel
Hi xl-Fan´s,
beschäftige mich schon seit Tagen mit dem ein und dem selben Problem, und bekomme es einfach nicht hin. Habe mich schon vor paar Tagen in diesem Thread
https://www.herber.de/forum/archiv/796to800/t799436.htm
gemeldet, allerdings komme ich dort nicht weiter.
Ich habe jetzt folgende Datei erstellt: https://www.herber.de/bbs/user/36691.xls
Mein Problem ist jetzt hauptsächlich das VBA.
Und zwar hatte ich ja geschildert den Suchvorgang zu "automatisieren" in dem ich ein Buchstaben vorgebe (suche) und dann darunter alle Begriffe mit dem Anfangsbuchstaben erscheinen. Nun bekomme ich nicht so wie im Thread geschrieben den Zusammenhang mit dem "Kästchen in dem der gleiche Buchstabe steht wie gesucht" und dem Autofilter hin.
Was mache ich falsch... bzw. wie funktioniert es genau?
Hoffe ich konnte die Problemstellung präzise genug rüberbringen, ansonsten schreien.
Gruß
Wrobel

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Autofilter
18.09.2006 09:22:24
Klaus
Hallo Wrobel,
Nimm die Makrorekorder-Funktion, um den Autofilter aufzuzeichnen. Der Code wird so aussehen:
Sub Makro1()
Selection.AutoFilter Field:=1, Criteria1:="H"
End Sub

Die "Selection", welche wir trafen, war das Feld A15 (also das markierte, schwarz umrandete Feld in Excel). Da wir das Makro später automatisch starten wollen, egal von welchem Feld aus, müssen wir hier manuell anpassen:
Sub Makro1()
Range("A15").AutoFilter Field:=1, Criteria1:="H"
End Sub

In dem Beispiel hab ich nach "H" gefiltert, was man am Zusatz Criterial1:="H" sieht. Hier wollen wir flexibel werden und den Buchstaben aus A11 zum Filtern haben (bei der Gelegenheit: vermeide verbundene Zellen!). Der Inhalt von A11 heisst in VBA Range("A11"), der Code wird also per Hand umgeschrieben in:
Sub Makro1()
Range("A15").AutoFilter Field:=1, Criteria1:=Range("A11")
End Sub

Schon jetzt funktioniert das Makro. Wähl in A11 einen Buchstaben aus, geh über [Extras - Makro - Makros - Makro1 - ausführen] und die Liste wird gefiltert.
Bevor wir weiter machen, geben wir dem Makro einen sinnigen Namen damit wir uns später daran erinnern, wofür es gut war. Deine Kinder heissen ja auch nicht Kind1, Kind2 usw. ;)
Sub AutoFilterAnwenden()
Range("A15").AutoFilter Field:=1, Criteria1:=Range("A11")
End Sub

Dies Makro wollen wir jedes Mal laufen lassen, wenn die Zelle A15 verändert wird. Also müssen wir die Zelle A15 überwachen und bei jeder Änderung das Makro laufen lassen. Dabei behelfen wir uns eines kleinen Tricks:
Rechtsclick auf die Menüleiste oben und einen Haken bei "Steuerelement-Toolbox". Aus dieser wählen wir das Textfeld (das kleine, wo ab| drinne steht) und plazieren es irgendwo, wo es nicht stört.
Im Entwurfsmodus (die ganz linke Taste der Toolbox) ein Rechtsclick auf eben dieses Textfeld, das jetzt in der Datei ist, und "Eigenschaften". Es geht ein Fenster auf, in dem so einiges zu ändern möglich ist - uns interessiert erstmal nur das Feld "LinkedCell". Hier wird die Zelle A11 (unser Suchbegriff) eingegeben.
Jezt schonmal beobachten: Wenn die Zelle A11 übers Dropdown geändert wird, ändert sich auch die Textbox - das wird unsere Überwachung.
Im Entwurfsmodus doppelclick auf die Texbox, es erscheint:

Private Sub TextBox1_Change()
End Sub

Momentan wird also kein Code ausgeführt, wenn die TextBox1 sich ändert. Wir wollen aber oben erarbeiteten Code ausführen lassen! Also rein damit in den TextBox-Code:

Private Sub TextBox1_Change()
Range("A15").AutoFilter Field:=1, Criteria1:=Range("A11")
End Sub

oder Alternativ

Private Sub TextBox1_Change()
Call AutoFilterAnwenden
End Sub

Sooo - jetzt den Entwurfsmodus wieder ausschalten und probieren! Klappts?
Gruß,
Klaus M.vdT.
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige