Clever-Excel-Forum

Normale Version: Dropdown mit Suchfunktion und ohne Leere Zellen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo,

zum Erstellen eines Banf-Formulars habe ich dieses mit der Datenbank verknüpft, sodass alle im ERP-System angelegten Lieferanten per SQL in einer Tabelle dargestellt werden. Bei der Lieferantenangabe in der BANF wird bei der Zelle "Firma" der Lieferant anhand eines Dropdownfelds ausgewählt. Die rechtlichen Daten wie Adresse etc. werden dann automatisch per sverweis in den Zellen ergänzt. Das Problem hierbei war, dass es natürlich eine große Anzahl an Lieferanten gibt. Also habe ich ein Suchfeld hinzugefügt. Wenn in diesem Suchfeld nun ein Wert wie z.B. "Alex" eingetragen wird, dann werden alle Ergebnisse, die diesen Wert enthalten (Alex und Alexander) im Dropdownmenü angezeigt. Das Ergebnis ist, dass nun eine bestimmte Zahl an ausgefilterte Zellen entstehen (siehe Tabelle 2) . Diese Zellen, werden als leere Zellen im Dropdownmenü unter den Ergebnissen dargestellt. Um dies auszufiltern, habe ich eine Formel verwendet, welche die Zellen mit Wert um die Zellen ohne Wert subtrahiert (siehe Tabelle 1 im Namensmanager). Eigentlich funktioniert auch alles wunderbar, aber leider ist dies aufgrund der Datenmenge eine größere Berechnung. Deshalb braucht Excel zu viel Zeit, um die Dropdownliste zu Filtern.

Also...nun zu meiner Frage... Dodgy 

Gibt es eine bessere Alternative zu der Excel-Tabelle, welche ich beispielhaft in den Anhang hochgestellt habe? Die Alternative sollte die dropdownliste ebenso darstellen allerdings nur mit einem Bruchteil der Rechenzeit.

Lieben Dank.

Grüße

Sebastian
Hallo Sebastian,

so wie Du schreibst, klingt es, als ab Du das Zeitproblem beim Ausblenden der Leerzellen für die Dropdownzelle vermutest.
Die Formel für Deine benannte Formel Range_Test lässt sich zwar verbessern:
Code:
='Tabelle 1'!$D$2:INDEX(Test_Test[Dropdown];ZÄHLENWENN(Test_Test[Dropdown];"?*"))

Aber die Ursache für das Zeitproblem ist wohl vordergründig in der Ermittlung Deiner Daten in [Dropdown] zu suchen. An dieser Formel, gibt es aber mE nichts zu optimieren. Derartige Formeln sind aber nicht für Massendatenauswertung geeignet, die ich bei Dir vermute. Wie viele Datensätze sind denn ca. max auszuwerten? Sicherlich einige tausende, denn bis dahin wäre eine reine Formellösung noch vertretbar.

Deshalb hilft mE nur der Einsatz von VBA oder alternativ PowerQuer. Aus VBA halte ich mich allerdings grundsätzlich außen vor und auf PowerQuery hab ich momentan keinen Zugriff. Power Query müsste mE außerdem mit VBA insofern kombiniert werden, dass dessen Ergebnisaktualisierung nach Eingabe des Suchbegriffs automatisch vorgenommen wird.
Hallo Neopa,

vielen Dank für die Antwort. Leider wurden meine Befürchtungen wohl bestätigt. Dafür habe ich aber wieder was dazu gelernt. Aktuell handelt es sich um 2075 verschiedene Datensätze. Ich werde wohl die leeren Zeilen im Dropdown akzeptieren, da hier die Rechenzeit deutlich geringer ist.

Grüße

Sebastian
Hallo,

ich habe mir meine Excel heute nochmal angeschaut. Zum Glück konnte ich mein Problem lösen.

Es handelte sich hierbei lediglich um 2075 Datensätze. Allerdings wurde in der Dropdownliste in jeder Zelle die 2075 Datensätze nach dem Suchfeld durchsucht. Ich habe die Formel mit Index und AGGREGART nun auf nur 40 Zellen Beschränkt. 

Das Problem wurde dadurch behoben, da ich ja durch das Suchfeld sowieso immer nur einen bestimmten Lieferanten sehen möchte.

Lieben Dank nochmal für die Hilfe.

Grüße

Sebastian