HERBERS
Excel-Forum
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Entdecke rund 2 Millionen Excel-Lösungen im
Forumsarchiv
Forumbeitrag
Excel-Version des Fragestellers:
365 privat
Erfahrungslevel des Fragestellers:
Basiskenntnisse in Excel
Case
15.06.2026 12:46:58
Mit folgender...
Moin Werner, :-)

... PQ-Lösung habe ich deine "Bedingungen verwurschtelt": ;-)
https://www.herber.de/bbs/user/180809.xlsx

Prinzipiell kannst du das mit "try" erschlagen - {"Von", each try Int64.From(_) otherwise null, Int64.Type} - allerdings nur "generell". Zum Fehler abfangen reicht das schon, aber du willst ja mehrere Bedingungen. ;-)

Grob umrissen: ;-)
Mit der Funktion "GetWert" sage ich erstmal - was will ich haben, was sind die Bedingungen. ;-)
Hat den Vorteil, wenn neue Bedingungen aufschlagen, muss ich nur dort anpassen. ;-)

Dann lade ich die Quelle. ;-)
Nun werden die Zeilen entfernt, wo alle drei Werte gleich sind - also keine Doppelten/Mehrfachen. ;-)
Dann baue ich die Liste auf - mit meinen/deinen Bedingungen aus der Spalte "Wert" bezogen auf die Funktion "GetWert". ;-)
Anschließend lasse ich nur noch Zeilen übrig, wo Gruppe und Wert <> null. ;-)
Zum Schluß wird die Liste expandiert und nur noch die beiden Spalten Gruppe und Wert bleiben erhalten. ;-)

In "tblErgfnc" habe ich die Funktion "fncGetWert" ausgelagert. Das macht Sinn, wenn viele Bedingungen vorkommen. Wird übersichtlicher. ;-)
"tblErgfnc" ist "Nur Verbindung". ;-)

Der Unterschied in der Ausgabe liegt daran, dass deine Formel die "Doppelten" noch mit ausgibt. ;-)

Servus
Case
Als Antwort auf diesen Beitrag
neopa C
14.06.2026 19:12:42
AW: noch (m)ein (erweiterter) Formellösungsvorschlag ...
Hallo Alex,

... eine Teilbasis meiner nachfolgenden Formel waren Teile der Formel von Daniel.
=LET(

Nrn;INDEX(_MB;;1);
M;SORTIEREN(FILTER(_MB;Nrn<>""));
Nr;INDEX(M;;1);
Von;WENNFEHLER(--INDEX(M;;2);INDEX(M;;3));
Bis;WENNFEHLER(--INDEX(M;;3);Von);
Mz;HSTAPELN(Nr;WENN(Von>Bis;Bis;Von);WENN(Von>Bis;Von;Bis));
BisX;MAX(INDEX(Mz;;3));
Se;SEQUENZ(ANZAHL(INDEX(Mz;;3))*BisX);
Zl;AUFRUNDEN(Se/BisX;0);
Re;REST(Se-1;BisX)+1;
My;HSTAPELN(INDEX(Mz;Zl;1);Re);
FILTER(My;(INDEX(Mz;Zl;2)<=Re)*(INDEX(Mz;Zl;3)>=Re)))

Folgendes ist/wurde vorausgesetzt:
- Die auszuwertenden Datenwerte sind eine "intelligente 3spaltige Tabelle " (benannt von mir z.B. als: _MB)
Diese können fast beliebig erfasst, erweitert und auch nachträglich in der Datei und oder Tabellenblatt verschoben werden
- Jeder Datensatz muß aber (akt. noch) eine eindeutige GruppenNr. haben (also keine Duplikate!)

folgendes wird in der Formel zusätzlich berücksichtigt:
- Datenwerte der Gruppennummer können Zahlen- oder Textwerte sein
- Datenwerte in [Von] oder [Bis] die Textwerte sind, werden = ihrem Nachbarzahlenwert
- Datenwerte in [Von] oder [Bis] die leer sind, werden wie 1 gewertet
- Wenn [Bis] < [Von] wird von ein Vertauschen der beiden Werte angenommen.
- es erfolgt eine nach GruppenNr sortierte Ergebnisliste
- in 2. Spalte des Ergebnisses habe ich das benutzerdef. Zahlenformat "/"00 definiert (dadurch bleiben die Zahlenwerte auch weiterhin solche)

folgendes wird momentan noch nicht berücksichtigt:
- Datensätze mit identischer Gruppennummer und unterschiedlichen [Von] - [Bis] - Werten (Dazu bin ich u.a. auch aus Zeitgründen momentan nicht gekommen)

Auf evtl. Rückfragen kann ich leider zumindest die nächsten 10 Tage nicht reagieren.

Gruß Werner
.. , - ...
aus C the unseen
Folgenachrichten
Antwort auf Beitrag erstellen
Bitte einen Anwendernamen ohne @ eingeben.
Bitte das Passwort eingeben.
Bitte eine gültige E-Mail-Adresse eingeben.
Bitte einen Betreff eingeben.
Weitere Optionen
Aktivieren, wenn die Frage/der Beitrag noch nicht beantwortet wurde und unter Listen > Offene Threads erscheinen soll.
Beispieldatei hochladen

Bitte einen Nachrichtentext eingeben.