Clever-Excel-Forum

Normale Version: Ausfiltern von Daten über Userform
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen, 

ich bastel mal wieder an einer Datei und suche nun den passenden Code.  Huh

Im Grunde möchte ich eine bestehende Datenbank (ca. 2500 Zeilen, 30 Spalten) per VBA filtern und die Daten in ein neues Tabellenblatt kopieren. Quasi ein Extrakt aus der Gesamtübersicht für jeden Kunden.

Als Kriterium soll die Kundennummer dienen, welche ich aber über ein Userform (Listbox) auswählen möchte. Um die Listbox mit den entsprechenden Daten zu füllen, habe ich eine Hilfstabelle mit den Kundennummern und -namen erstellt. Eine abgespeckte Version habe ich mal in den Anhang gepackt

Hat hier jemand eventuell eine Idee wie man das machen könnte? Per Autofilter vielleicht? Nur wie übernimmt der Autofilter die Eingabe/Auswahl aus der Listbox?

Vorab vielen Dank & Grüße
Hallo,

auch hier die Frage, warum du das nicht einfach mit dem Autofilter machst?
Hallöchen,

nach dem Filtern müsstest Du dann nur noch das Kopieren programmieren Smile Und den Autofilter kannst Du entweder per Code ausschalten oder auch per Hand.

Trotzdem noch ein paar Hinweise. Den Autofilter zu setzen kannst Du aufzeichnen. Dort steht dann z.B. das Wort, nach dem Du gefiltert hast, z.B. "MeinWort"
Das kannst Du z.B. durch den Code für den Wert der CoboBox, z.B. ComboBox1.Value, ersetzen

Kopieren tust Du dann die sichtbaren Zellen, im Prinzip

Range("A1:X99").SpecialCells(xlCellTypeVisible).Copy

Statt "A1:X99" nimmst DU dann den Tabellenbereich, den Du filterst.
Hallo Piewie

hier Deine Datei, ergänzt mit Ausfüllzelle im Blatt "Ergebnisausgabe", Zelle K2, wo Du den gewünschten Kundennamen auswählst, für den die Tabelle erstellt werden soll.
[attachment=34043]

Du kannst jederzeit vor einer Tabellenerstellung die Reihenfolge der Spaltenüberschriften im Blatt "Ergebnisausgabe" beliebig anordnen. Sie müssen nur in der Kopiertabellenüberschrift buchstabengleich zu finden sein.

Grundlage ist ein ereignisgesteuertes Makro im Blattmodul von "Ergebnisausgabe" und basiert auf der Funktion "Erweiterter Filter". Das Makro ist praktisch ein Einzeiler.

Probier es aus. Gruss Raoul
@Klaus-Dieter: 
Weil ich die Autofilter-Variante (so wie ich sie kenne) als etwas "unübersichtlich" sehe. Allerdings gehe ich da immer vom manuellen Filtern aus. 
                       
Ich habe ein ähnliches Formular in Word gebaut. Allerdings werden hier keine Daten gefiltert und kopiert, sondern ein Userform ermöglicht die Auswahl des Kunden (und dessen Adresse), sowie die Eingabe mehrer Textmarken/Informationen. Damit fahre ich ganz gut und die Kollegen kommen klar damit. Daher wollte ich in dieser Liste etwas ähnliches bauen.

@schauan: Das werde ich gleich mal testen. Vielleicht komme ich damit ja hin. 

@Raoul: Das ist auch eine schöne Variante. Ich baue sie gleich mal in meine große Liste ein. Vielleicht reicht das hier schon. Danke dafür