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

Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln

Forumthread: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln

Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 13:47:39
Andre_BG
Hallo zusammen,

ich hab mal wieder eine Frage und zwar habe ich hier ein Konkretes Beispiel, ich möchte im Endresultat Mittels der Funktion Nettoarbeitstage Die Anzahl der Tage zwischen 2 Daten berechnen, über den 3 Parameter [Freie Tage], kann man ja eine Liste übergeben, die hierbei nicht berücksichtigt werden soll und genau hier startet mein Problem:

Userbild

Ich habe jetzt hier in dem Beispielhaften Screenshot mal Schulferien genommen (in echt sind es deutlich mehr Datensätze mit wesentlich weniger Tagen zwischen Start und Ende), diese haben immer ein Start und ein Enddatum.
Mittels der Sequenzfunktion kann ich diese mit der folgenden Formel zu einer Liste stapeln, hier sind es nur 6 Datensätze, da geht das die echten Daten sind vielleicht 50, da ist mir das zu Mühsam.

=VSTAPELN(

SEQUENZ(AC2-AB2+1;;AB2;1);
SEQUENZ(AC3-AB3+1;;AB3;1);
SEQUENZ(AC4-AB4+1;;AB4;1);
SEQUENZ(AC5-AB5+1;;AB5;1);
SEQUENZ(AC6-AB6+1;;AB6;1);
SEQUENZ(AC7-AB7+1;;AB7;1))


Daher dachte ich an die Verwendung der folgenden Formel:

=Nachzeile(AB2:AC7;lambda(z;sequenz(Spaltenwahl(z;2)-Spaltenwahl(z;1)+1;1;Spaltenwahl(z;1);1)))


jedoch erhalte ich als Ergebnis dann immer nur das Startdatum des jeweiligen Zeile, ich hab es auch schon versucht mit vstapeln, zuspalte etc. künstlich zuvor zu separieren und später wieder zusammen zu fügen, aber das Ergebnis war immer das Gleiche. Hat hier jemand eine Idee, wie ich das bewerkstelligen könnte ohne alle 50 Zeilen einzeln angeben zu müssen?

Falls gewünscht kann ich gerne eine Beispiel Datei anhängen jedoch ist ja das Beispiel eigentlich leicht reproduzierbar, denn dies tritt aber 2 Datensätzen auf, wenn es nur einer ist klappt noch alles wie gewünscht.

Würde mich über Tipps freuen und Danke im Voraus.

VG
Andre
Anzeige

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 13:53:19
{Boris}
Hi,

Falls gewünscht kann ich gerne eine Beispiel Datei anhängen

Ja, bitte.

VG, Boris
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 14:17:44
Onur
"jedoch ist ja das Beispiel eigentlich leicht reproduzierbar" - Klar, aber warum sollten WIR auch noch deine Datei mühsam reproduzieren, wenn es doch für dich nur ein paar Mausklicks wären ?
Anzeige
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 15:07:15
Andre_BG
Kein Problem,

bitte sehr

https://www.herber.de/bbs/user/175993.xlsx

ich habe nochmal das mit dem Nettoarbeitstagen hinten angedeutet, auch wenn es eigentlich irrelevant ist für die Frage.
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 15:28:41
Onur
Kann man bestimmt noch verkürzen, aber läuft:
https://www.herber.de/bbs/user/175996.xlsx
Anzeige
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 15:49:17
Andre_BG
Hallo Onur,

vielen Dank für die Anregung, leider scheint das aber noch nicht ganz zu gehen, denn hier bekomm ich immer das Startdatum+ die Zeile des Datensatzes und dies wird so oft wiederholt, wie hoch die Spanne ich, ich schau mal ob ich den Fehler selber finde.

Userbild

Anzeige
AW: Probiere es mal...
28.02.2025 13:24:26
Andre_BG
Hallo Case,

vielen Dank auch für deine Antwort kam leider erst jetzt dazu mir deine Antwort anzuschauen, die ist auch sehr schön rein prozedural sogar ein wenig besser, da man das ganze quasi mit einer Funktion auskommt, ich hab das ganze dennoch nochmal ein bisschen angepasst um mir den langen Sequenz Part zu sparen und nicht für jeden Teil B2:B7 angeben zu müssen, falls sich das mal ändert.

Daher hier auch wieder meine verwendete Formel:

=LET(von;B2:B7;bis;C2:C7;seq;LAMBDA(ind;SEQUENZ(INDEX(bis;ind)-INDEX(von;ind)+1;;INDEX(von;ind)));REDUCE(seq(1);SEQUENZ(ZEILEN(von)-1;1;2);LAMBDA(acc;i;VSTAPELN(acc;seq(i)))) )


Keine Ahnung welche Funktion ich bevorzugen würde, als Anfänger vermutlich die von Onur, da man die deutlich besser Debuggen kann, da man die einzelnen Bestandteile einzeln ausführen kann. Also Profi dem es nur um die Funktionalität geht ohne wirklich verstehen zu müssen, was da passiert die vom Case.

Vielen Dank Euch beiden.
Anzeige
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 16:39:25
Andre_BG
Vielen Dank nochmal, mit ein wenig überlegen kam ich zu einer Lösung, falls einer das gleiche Problem mal haben sollte hier die vollständige Lösung:

habe die Variablennamen nur leicht abgeändert, damit war es für mich besser lesbar. und habe durch provozieren eines Fehlers in der Wenn Bedingung auf den Filter am Ende verzichten können. Da ich in Spaltenwahl Fehler ja schon ausschließen kann aus den Datensätzen.

=LET(von;$B$2:$B$7;bis;$C$2:$C$7;max;MAX(bis-von)+1;sq;SEQUENZ(ZEILEN(von));smx;(SEQUENZ(;max;0)+von)=bis;ZUSPALTE(WENN(smx;ZEILENWAHL(SEQUENZ(;MAX(max);0)+von;sq);#NV);2))
Anzeige
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 17:01:32
Onur
Freut mich zwar, dass du offenbar meine Formel verstanden hast, aber wieso nimmst du nicht meine ZWEITE (korrigierte) Formel, die 29 Zeichen kürzer ist als deine ?
Durch...
26.02.2025 17:24:47
Case
Moin, :-)

... FILTER kann aber ZEILENWAHL(SEQUENZ... wegfallen: ;-)
=LET(v;$B$2:$B$7;w;$C$2:$C$7;x;MAX(w-v)+1;y;SEQUENZ(;x;0)+v;z;ZUSPALTE(WENN(y=w;y;#NV));FILTER(z;ISTZAHL(z)))

Oder du löst das Ganze über Power Query. ;-)

Servus
Case
Anzeige
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
26.02.2025 17:19:32
Onur
UND du solltest bei LET nie Variablen-Namen nehmen wie "max", denn MAX ist schon eine EXCEL-Funktion.
AW: Mit Nachzeile, mehrere Sequenzbereich übereinander Stapeln
28.02.2025 13:30:05
Andre_BG
Das hat schlicht und ergreifend den Grund, das deine 2 noch nicht verfügbar war, als ich deine erste "geprüft" habe, erst als ich geantwortet hatte, hatte ich gesehen, dass eine neuere von dir kam, die ich übrigens auch genommen habe, aus dem von dir angeführten Grund.

Das mit Min/Max, ist mir zwar bewusst, aber hat bei mir bisher keinerlei Probleme erzeugt, in welchem Fall könnte das denn mal problematisch sein?
Daher schreibe ich immer die Variablennamen klein, während die Funktionsnamen von Excel automatisch in groß korrigiert werden. Damit ich sie optisch unterscheiden kann.

Anzeige

Forumthreads zu verwandten Themen

Anzeige