Terminliste 2.0
#11
Vielen Dank für die Antwort.... das habe ich überlesen...
Antworten Top
#12
Warum kein klassischer Terminplaner? 

in der Jahresübersicht (rechts) auf einen Tag klicken,  links öffnet sich die Tagesansicht für den geklickten Tag, Termine eintragen -> fertig. 
Kann beliebig um automatische Wochenenden und andere gewünschte Features erweitert werden.

   
Antworten Top
#13
(06.06.2025, 04:47)Blaukraut05 schrieb: Warum kein klassischer Terminplaner? 

in der Jahresübersicht (rechts) auf einen Tag klicken,  links öffnet sich die Tagesansicht für den geklickten Tag, Termine eintragen -> fertig. 
Kann beliebig um automatische Wochenenden und andere gewünschte Features erweitert werden.

Diese Idee ist cool und wahrscheinlich effizienter...
Antworten Top
#14
Hallo Anton,

um das Ganze besser zu verstehen, habe ich mal Deine Formel zerlegt und mir ist aufgefallen, dass man ein paar Sachen verkürzen bzw. sogar weglassen könnte:

Code:
=LET(tg;ARBEITSTAG.INTL($C$1;SEQUENZ(C2);G9;FT);r;REDUCE({0.0};tg;LAMBDA(Akk;dt;LET(spwotg;REST(C1-1;7)+1;start;INDEX(K2:O2;spwotg);ende;INDEX(K3:O3;spwotg);tgterm;SEQUENZ((ende-start)/E1+1;1;start;E1);tgtermct;ZEILEN(tgterm);VSTAPELN(Akk; HSTAPELN(ERWEITERN(dt; tgtermct; 1; dt); tgterm))))); VSTAPELN({"Datum"."Termin"}; WEGLASSEN(r; 1)))
Gruß

Edgar

Meine Antworten sind freiwillig und ohne Gewähr!
Über Rückmeldungen würde ich mich freuen.
Antworten Top
#15
Hallo,

ich habe einige Änderungen/Verbesserungen eingebaut:

1) Es gibt jetzt eine Funktion "ListeFeiertage(Land)", die die für das betreffende Bundesland hinterlegten Feiertage auflistet (im Namensmanager enthalten):
zB. =ListeFeiertage("Sachsen") oder =ListeFeiertage("Bayern")
oder falls man alle in der Tabelle "tbFeiertage" enthaltenen Feiertage haben will: =ListeFeiertage("--Alle--").
In strukturierter Form sieht diese Formel so aus:
Code:
/**
Ermittelt die Feiertage für ein Bundesland in einem Kalenderjahr
auf Basis der Tabelle "tbFeiertage" (im Arb.Blatt "Feiertage").
Parameter: Bundeslandname oder "--Alle--", wenn alle Feiertage ermittelt werden sollen.
*/
ListeFeiertage = LAMBDA(Land; LET(
    bdld; WENN(land = "Augsburg"; "(Bayern|" & land & ")"; land);
    abfr; LAMBDA(krit; [entf]; FILTER(tbFeiertage; REGEXTESTEN(tbFeiertage[Beschreibung]; krit); entf));
    WENN(
        bdld = "--Alle--";
        abfr(".*");
        VSTAPELN(
            abfr("\s" & bdld & "([es,]|$)"; "Kein Landesfeiertag in " & land);
            abfr("^ges.+tag$");
            abfr("\sArbeitgeber");
            abfr("^Einzel")
        )
    )
));;

Was alles bei einem bestimmten Bundesland enthalten ist, kann man mittels DropDown von Zelle Feiertage!B30 ausprobieren.

2) Im Arbeitsblatt "Hilfe" habe ich die DropDown-Listen in eine einheitliche Tabelle "tbDD" eingefügt. Auf eine einzelne DropDown-Liste greift man über die Namen "DDStartzeit", "DDEndzeit", "DDDauer" bzw. "DDLand" zu (im Namensmanager enthalten).

3) Im Arbeitsblatt "Tabelle1" habe ich die Wochendaten konsistenter aufbereitet, indem ich diese alle in die Tabelle "tbWochentage" im Bereich F1:LM5 eingefügt habe. Die Auswahl der freien Tage pro Woche habe ich in die Zeile G5:M5 eingefügt. Ferner kann man auch pro Wochentag jetzt eine Termindauer festlegen.

4) Weiters habe ich in C1, C2, C3 und C4 die Zellwerte festgelegt, die für die Ausgabesteuerung ab Zelle A10 wichtig sind. Dabei dient C4 (Bundesland) zur Auswahl der verfügbaren Feiertage. 

5) Die Werte aller hellgrau hinterlegten Zellen gehen sofort dynamisch in den Ausgabe-Bereich ab Zelle A10 ein, wobei die dafür zuständige Formel in A10 enthalten ist. Diesen Bereich habe ich mit 2 bedingten Formaten unterlegt. Das eine Format trennt die einzelnen Tage durch einen roten Trennstrich voneinander, das andere Format ist für den zweizeiligen grün-weißen Zebra-Look zuständig.
(Ich habe hier auch die Vereinfachung, die BoskoBiati angeregt hat, eingebaut für den Zugriff auf die Wochentagstabelle).


Angehängte Dateien
.xlsx   Lambda_Terminliste.xlsx (Größe: 37,88 KB / Downloads: 13)
Gruß Anton.

Windows 10 64bit
Office365 32bit
Antworten Top
#16
Hallo

Erstmal vielen Dank für die toll3n Antworten und eure Arbeit. Ich schau mir das heute genauer an. 

Vielen Dank
Antworten Top
#17
Hallo

Ich muss dieTermine an Mailadressen weiterleiten. Das ist für mich sehr einfach und vorallem sehr schnell, wenn ich nur ein Startdatum angeben, die Liste dann erstellt wird. Versenden, ferig. Unter Berücksichtigung von Feiertagen, Tatsächlichen Arbeitstagen, und Uhrzeiten die ich in einer kleinen Tabelle vorgeben kann 
Im ergebnis brauche dann keine 1/2 - 1h zum erstellen solcher listen sondern nur noch 1min. Incl. Excel öffnen undversenden. Wozu soll ich mir Gedanken machen wenn ich sodas mit ein zwei Klicks gerieren kann. Ich habe zwar schon eine Version. Kann da aber nicht die Arbeitstageanwählen, an denen ichdie Termine haben möchte. Nur stumpf von Montag bis Donnerstag

Schöne Grüße
Heiko
Antworten Top
#18
Hallo 
hier nochmal eine andere Formelvariante, welche lediglich auf die grauen Eingabezellen zugreift.
Allerdings habe ich noch ein Enddatum (C2) als Eingabemöglichkeit hinzugefügt, um die Liste zu begrenzen.

die Formeln sind:
in E15:
Code:
=LET(
a;ARBEITSTAG.INTL($C$1-1;SEQUENZ($C$2-$C$1);$G$9;Feiertag[Datum]);
b;FILTER(a;a<=$C$2;"0");
c;TEXT(b;"TTTT");
d;Wochentage[#Kopfzeilen];
e;Wochentage;
--TEXTTEILEN(GLÄTTEN(TEXTKETTE(WIEDERHOLEN(b&" ";QUOTIENT(INDEX(e;2;VERGLEICH(c;d;0))-INDEX(e;1;VERGLEICH(c;d;0));$E$1))));;" "))

und in F15:
Code:
=LET(a;E15#;b;$E$15;
c;TEXT(a;"TTTT");
d;Wochentage[#Kopfzeilen];
e;Wochentage;
f;NACHZEILE(a;LAMBDA(x;ZÄHLENWENNS(b:x;x)))-1;
INDEX(e;1;VERGLEICH(c;d;0))+f*$E$1)

kleine Einschränkung: die Liste kann maximal 5460 Zeilen lang werden, da Texte als Zwischenschritt verwendet werden.

Gruß Daniel


.xlsx   Mappe1 (2).xlsx (Größe: 36,96 KB / Downloads: 2)
Antworten Top


Gehe zu:


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