Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Comboboxen sollen nur gefilterte Werte anzeigen

Comboboxen sollen nur gefilterte Werte anzeigen
09.09.2024 11:50:37
Xerasu
Hallo zusammen :)

ich verzweifel grad langsam... zur Aufgabenstellung:

Ich habe zurzeit 20 Comboboxen die jeweils verknüpft sind mit einer Tabelle (CB1 Spalte A CB2 Spalte B etc), wenn ich nun in einer CB einen Wert aus dem Dropdown auswähle sollen die anderen CBs entsprechend gefiltertet nur die passenden Werte aus der jeweilige Zeile auflisten.

https://www.herber.de/bbs/user/172087.xlsm

Dies ist die Beispieldatei inkl. der Userform und der aktuellen Programmierung. Diese basiert zum Teil auf ChatGPT, aber dies führte auch zu keinerlei Verbesserung (der Filter FIlter gar nichts und zeigt immer alles an.)

Idee ist egal welche CB ich zuerst ansteuere so sollen die anderen entsprechend darauf reagieren und nur noch die entsprechend passenden Zeilen ausgeben.

Ich hoffe es war halbwegs verständlich was meine Idee ist und das Ihr mir helfen könnt :)

Grüße
Anzeige

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Comboboxen sollen nur gefilterte Werte anzeigen
09.09.2024 16:25:38
Herbert Grom
Hallo Alexander,

wenn ich dich richtig verstanden habe, sollen die Daten einer Zeile in de CB eingelesen und dann in die erste freie Zeile wieder ausgegeben werden. Welchen Sinn macht das, wenn diese Daten dann doppelt vorhanden sind?

Servus
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 10:49:40
Alwin Weisangler
Hallo,

mal ein anderer Denkansatz. Du nutzt eine Listbox und filterst Diese. Dann kannst du in den gefundenen Datensätze einen relevanten Datensatz anklicken und in Textboxen ausgeben.
Ich habe mal etwas von mir so weit wie erforderlich übernommen/eingebaut, dass du damit nur noch die fehlenden Textboxen einbauen und ins Array eintragen musst.
Das ist deutlich praktikabler.
Die Combobox für das Filterformat (in welcher Spalte oder alle Spalten filtern) und die Filtereinstellungen kannst du mit Alt/s speichern. Damit steht nach dem Öffnen des Userforms die meistens benutze Filtereinstellung sofort zur Verfügung.
https://www.herber.de/bbs/user/172136.xlsm

Ansonsten wäre ich auch eher fürs filtern in der Tabelle (Listobjekt). Man kann, statt einem Userform besser im Ribbon eine Textbox und eine Combobox einbauen und die Tabelle filtern. Damit ist die Sicht auf die Tabelle nicht versperrt.

Gruß Uwe
Anzeige
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 12:12:16
Xerasu
Hey,

vielen lieben Dank Uwe, auf diese Idee bin ich gar nicht gekommen mit sowas zu arbeiten *facepalm* Danke dir! Dies sieht soweit richtig richtig gut aus!
Ich werde nun ein bisschen damit rumspielen und experimentieren. Danke für diese Lösung und den Denkansatz für die Zukunft!

Leider gibt es keine Möglichkeit zu wechseln, leider empfindet es die GF das 365 zu teuer ist die monatlichen Kosten ;) Kann nun gehalten wie gewollt

Danke für Eure Unterstützung!
Damit kann die Frage geschlossen werden!
Anzeige
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 10:59:53
daniel
Hast du die Möglichkeit, auf Excel 365 oder mindestens 2022 zu wechseln?
dort könnte man per Formel für jede Combobox eine kleine Tabelle anlegen, welche per Formel die sichtbaren und auf Eindeutige redzuierten Werte einer Spalte anzeigt und dann müsstest du nur jede Combobox über RowSource mit dieser Tabelle verknüpfen.
das würde die Sache sehr vereinfachen.
In Excel 2019 fehlen die hierfür benötigten Funktionen
Gruß Daniel
Anzeige
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 11:26:24
Herbert Grom
Hi Daniel,

wie könnte die entsprechende Formel dafür aussehen, du weißt ja, die neuen Formeln sind mir noch nicht so geläufig?

Servus
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 19:51:20
daniel
ich hab mich nicht intensiv damit beschäftigt, aber ich vermute du willst in einem Feld die eindeutigen Werte einer Spalte und dann nur die Werte der Zellen.

dazu müsstest du der Ausgangstabelle eine Spalte hinzufügen mit der Formel: =Teilergebnis(103;xxx)
wobei xxx ein Zellbezug auf einer Zelle in der gleichen Zeile sein muss und die Zelle sollte nicht leer sein.
die Formel liefert eine 1, wenn die Zeile sichtbar ist und eine 0, wenn die Zeile ausgeblendet ist (ist die Zelle leer, dann ist das Ergebnis immer 0.

die Formel für die Auswertung wäre dann =Eindeutig(Filter(Datenspalte;Spalte_mit_Teilergebnis=1;"")

Ein Excel 365 braucht man die Formel nur in die erste Zelle eingeben, die darunterliegenden werden dann entsprechend befüllt.
In der Combobox machst du die Befüllung dann dadurch, dass du in die Eigenschaft RowSource die Adresse des Zellbereichs einträgst, die die Daten enthält.
Da du hier eine Formel mit Spill hast, trägt man die Adresse mit angehängtem # ein : =Tabelle1!A1#
damit erreichst du, dass ich der Zellbezug an den Spillbereich der Formel, die in diese Zelle steht, anpasst.

die Befüllung der Comoboxen läuft dann automatisch, ohne dass eine Zeile Code benötigt wird.

Gruß Daniel
Anzeige
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 06:26:01
Xerasu
Guten Morgen :)

dann habe ich mich leider etwas umständlich/falsch ausgedrückt - sorry.

Nein der Gedanke ist ich habe eine Tabelle dort werden Stammdaten geführt, dieser werden durch eine Userform eingetragen, dies ist ja auch soweit gar kein Problem.
Diese Tabelle soll, aber genutzt werden um auch diese Daten aufzurufen über eine Userform. Sprich ich habe CB1 für Kunde und wähle dort einen Kunden aus, dann sollen die anderen CBs nur noch die Daten/Werte anzeigen die entsprechend was mit diesem Kunden zu tun haben bzw. die Zellen/Zeilen anzeigen die entsprechend dem Kunden eindeutig zugeordnet sind. Dieses soll, aber auch mit allen anderen CBs funktionieren. Sprich ich kann CB2 nehmen und dort den Artikelnummer oder Projektleiter auswählen um dann entsprechend alle anderen CBs nur mit der jeweiligen relevanten Werte die eindeutig in der Zeile/Zelle steht.

Ich hoffe dies war nun verständlich, ansonsten benötige ich deutlich mehr Kaffee :)
Anzeige
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 09:30:24
Herbert Grom
Das habe ich ja verstanden, aber was soll dann mit den Daten passieren, die in den CB's gefiltert werden?
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 09:39:37
Xerasu
Diese Daten sollen dann in eine Maske (welches vermutlich in einer Tabelle ist oder aber direkt in die Vorlage reinkopiert wird) reinkopiert werden, sodass diese Daten für die vorhandenen Vorlage (bzw. die die ich noch einbauen muss) genutzt werden können zum vorausfüllen der Vorlagen.
Es ist eine Stammdatenbank, welche die Idee hat für uns alle Projekte zu erfassen und diese Daten nutzbar zumachen, sodass nicht immer alles händisch eingetragen, werden muss, sondern eben nur einmal. Bestimmt kommen zukünftig noch weitere Idee hinzu, aber dies ist der aktuelle Stand.
Anzeige
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 09:42:35
Herbert Grom
Und warum muss das so umständlich über eine UF erfolgen? Es wäre doch viel einfacher, wenn du in der vorh. Tabelle in der gewünschten Spalte den Autofilter benutzen würdest und diese Datenzeile dann dahin übertragen, wo du sie hin haben willst.
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 09:54:22
Xerasu
Natürlich, wäre dies möglich, aber die Idee ist es für die Leute a) so leicht wie möglich zu machen und dies ist in meinen Augen sicherzustellen durch die UF (und diese kenn die Kollegen schon) und b) ist es auch "narrensicherer". Kenne meine lieben Kollegen die kriegen alles gewissermaßen kaputt.
Und c) die Aufgabe so als solche hat mich interessiert und ich mag VBA, aber hier mit dem Thema komme ich arg ans straucheln.
Daher ja es gibt leichtere Wege, aber die Umsetzung soll über die UF erfolgen, weil wie gesagt vermutlich noch einiges dazukommen wird in der Zukunft.
Anzeige
AW: Comboboxen sollen nur gefilterte Werte anzeigen
10.09.2024 10:05:21
Herbert Grom
Ich habe deine Frage mal auf "offen" gestellt, vielleicht hat ja einer noch eine kürzere Idee, denn ich kenne nur die Langversion und die ist mir zu aufwändig. 20 x 20 Prozeduren zu schreiben ist einfach keine professionelle Lösung.

Servus
;

Forumthreads zu verwandten Themen

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige