Wochenplan in Monat darstellen
#11
Fehler behoben. Hier nun meine Lösung:
Code:
=LET(
xA;DATUM(B1;C1;SEQUENZ(1;TAG(MONATSENDE(DATUM(B1;C1;1);0))));
xba;WENNFEHLER(SEQUENZ(ZEILEN(tbl_Touren);;"");"");
xB;WENNNV(HSTAPELN(tbl_Touren[[Mo]:[Fr]];xba;xba);"");
xC;tbl_Touren[aktiv];
xD;tbl_Touren[[ID]:[Vorname]];
xE;tbl_Touren[[#Kopfzeilen];[ID]:[Vorname]];
xF;tbl_FTage[Feiertage];
xG;ANZAHL(xA);
xH;ZEILEN(xC);
xI;MATRIXERSTELLEN(xH;xG;LAMBDA(z;sp;WENN(INDEX(xC;z)="x";INDEX(xB;z;REST(WOCHENTAG(INDEX(xA;sp);2)-1;7)+1);"")));
xJ;VSTAPELN(HSTAPELN(xE;xA);HSTAPELN(xD;WENN(xI=0;"";xI)));
xK;INDEX(xJ;1;);
xL;MATRIXERSTELLEN(ZEILEN(xJ);SPALTEN(xJ);LAMBDA(z;sp;WENN(UND(sp>=4;z>1;ISTZAHL(VERGLEICH(INDEX(xK;sp);xF;0)));WAHR;FALSCH)));WENN(xL;"";xJ))
Ich hatte mich da etwas verrannt.

Gruß Uwe
Antworten Top
#12
nun noch etwas verbessert:
Code:
=LET(
xA;DATUM(B1;C1;SEQUENZ(1;TAG(MONATSENDE(DATUM(B1;C1;1);0))));
xB;WENNNV(HSTAPELN(tbl_Touren[[Mo]:[Fr]];WIEDERHOLEN("";ZEILEN(tbl_Touren));WIEDERHOLEN("";ZEILEN(tbl_Touren)));"");
xC;tbl_Touren[aktiv];
xD;tbl_Touren[[ID]:[Vorname]];
xE;tbl_Touren[[#Kopfzeilen];[ID]:[Vorname]];
xF;tbl_FTage[Feiertage];
xG;MATRIXERSTELLEN(ZEILEN(xC);SPALTEN(xA);LAMBDA(z;sp;WENN(INDEX(xC;z)="x";INDEX(xB;z;REST(WOCHENTAG(INDEX(xA;sp);2)-1;7)+1);"")));
xH;VSTAPELN(HSTAPELN(xE;xA);HSTAPELN(xD;WENN(xG=0;"";xG)));
xI;INDEX(xH;1;);
WENN(MATRIXERSTELLEN(ZEILEN(xH);SPALTEN(xH);LAMBDA(z;sp;UND(z>1;sp>=4;ISTZAHL(VERGLEICH(INDEX(xI;sp);xF;0)))));"";xH))

Gruß Uwe
Antworten Top
#13
Hallo,

@schauan: Danke, eben noch gesehen: bei der Zeile zu vnTage steht noch drin $C$1. Das muss dann durch vnMonat ersetzt werden, damit's konsistent ist.

Gruß
Microsoft Excel Expert · Microsoft Most Valuable Professional (MVP) :: 2011-2019 & 2020-2022 :: 10 Awards
https://de.excel-translator.de/translator :: Online Excel-Formel-Übersetzer :: Funktionen :: Fehlerwerte :: Argumente :: Tabellenbezeichner
Antworten Top
#14
Noch ein Gedicht.


Angehängte Dateien
.txt   Formel.txt (Größe: 1,71 KB / Downloads: 8)
Antworten Top
#15
Hi
und noch ne Variante, die alles erledigt, dh
Feiertage, Wochenenden und die Filterung nach "aktiv"



PHP-Code:
=LET(a;ERWEITERN(FILTER(tbl_Touren[[Mo]:[Fr]];tbl_Touren[aktiv]="x");;7;"");
b;DATUM(B1;C1;1);
c;SEQUENZ(;TAG(MONATSENDE(b;0));b);
d;ÜBERNEHMEN(WEGLASSEN(HSTAPELN(a;a;a;a;a;a);;WOCHENTAG(b;3));;TAG(MONATSENDE(b;0)));
e;WENN(ZÄHLENWENNS(tbl_FTage[Feiertage];c);"---";d&"");
HSTAPELN(FILTER(tbl_Touren[[#Alle];[ID]:[Vorname]];tbl_Touren[[#Alle];[aktiv]]<>"");VSTAPELN(c;e)))

a) ist die Wochenplanung der Touren, hier wird gleich gefiltert und das Wochenende per ERWEITERN zur Matrix hinzugefügt, so dass du keine Hilfsspalten brauchst, diese werden intern hinzugefügt
b) ist das Startdatum
c) ist der Monat
d) das ist jetzt die Monatsliste, hier dupliziere ich einfach den Wochenplan und schneide dann Anfang und Ende die Spalten so weg, dass er zum aktuellen Monat passt
e) hier nehme ich die Touren an den Feiertagen raus
und zum Schluss werden die gefilterte Namensliste, die Datumszeile und die Toureplanung zusammengefügt.

das vorgehen in d erspart mir hier die komplexen Lambda-Funktionen.

Gruß Daniel

ps. wenn jemand bei d) noch weiß, wie man die Wochenplanung einfacher duplizieren kann, dann würde mich das freuen.
Antworten Top
#16
... Dankeschön, Ihr seid alle so was von Spitze 18 Bei für mich so komplexen Sachen habe ich noch ganz schön Nachholebedarf, aber durch die unterschiedlichen Lösungen lernt man vielleicht auch etwas besser Smile ...
Daniels Lösung hat das "Autofiltern" gleich noch integriert Smile Bei den anderen hatte ich zum Filtern noch zusätzlich die Spalte "aktiv" in die Ausgabe genommen.
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Antworten Top
#17
Hallo schauan,

hier mal eine PQ-Lösung zu Deinem Problem:
- Zelle 'C1' kann man die Monatsnummer wählen
- und nicht vergessen: mit Strg+Alt+F5 die PQ-Abfrage aktualisieren
- wenn sich der Wert in 'C1' ändert

Gruß von Luschi
aus klein-Paris


Angehängte Dateien
.xlsx   Test_LET_Monat_3.xlsx (Größe: 29,02 KB / Downloads: 4)
[-] Folgende(r) 1 Nutzer sagt Danke an Luschi für diesen Beitrag:
  • Ralf A
Antworten Top
#18
@slowboarder (Daniel)


Angehängte Dateien
.txt   Formel1.txt (Größe: 2,02 KB / Downloads: 10)
Antworten Top
#19
Hallo Chappy,

- habe Deine Formeln, die unter Also: und Bzw.: stehen getestet - und da ist noch der Wurm drin:
- am 04.01 2026/11.01.2026 ... (jeweils 1 Sonntag) finden Touren statt
- und das kann ja nicht sein 

Gruß von Luschi
aus klein-Paris
Antworten Top
#20
(01.04.2026, 08:44)Luschi schrieb: hier mal eine PQ-Lösung zu Deinem Problem:

...wie immer, eine sehr schöne Lösung! Lediglich in der Kalenderabfrage im Schritt Tage:

List.Dates(#date(Jahr, Monat,1),
                  Duration.Days(#date(Jahr, Monat,31) - #date(Jahr, Monat,1) ) + 1,
                  #duration( 1, 0, 0, 0 ))

machst Du es Dir unnötig schwer. Kürzer und übersichtlicher wäre dies:

List.Dates(#date(Jahr,Monat,1),Date.DaysInMonth(#date(Jahr,Monat,1)),#duration(1,0,0,0))
Der sicherste Ansatz für einen Irrtum ist der Glaube, alles im Griff zu haben.
Nur, weil ich den Recorder bedienen kann, macht mich das noch lange nicht zum Musiker.

Ciao, Ralf

Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste