Termine automatisch in Kalender eintragen
#11
und wieder habe ich ein paar Probleme...

Hier die Formel:

=WENNFEHLER(@WENN($AJ9=0;INDEX(Tabelle1[[#Alle];[Typ]:[Typ]];AGGREGAT(15;6;ZEILE(Tabelle1[[Typ]:[Typ]])/((F$7=Tabelle1[[Techniker 1]:[Techniker 2]])*($D9>=Anfang)*($D9<=Ende));1));"");"")


Zusammenfassung der Funktion:

Diese Formel befindet sich auf einem eigenen Tabellenblatt in der Zieltabelle - einem Kalender. Dort wird in Spalte AJ (unsichtbar) festgelegt, ob der Tag für Termine freigegeben wird oder nicht (Wochenende und Feiertage ausgeschlossen). 
Auf einem weiteren Tabellenblatt befindet sich die Quelltabelle "Termine". Dort werden bis zu 7 Tage und der Tag "Anfang" automatisch anhand von "Ende" berechnet (unsichtbar). Anhand der eingetragenen Termine mit entsprechender Vorlaufzeit und eingeplanten Mitarbeitern wird der Typ des Termins in die Zieltabelle eingetragen.


Nun zum ersten Problem:

Im Kalender (Zielzelle) wird der falsche "Typ" angezeigt. Und zwar genau um eine Zeile aus der Quelltabelle versetzt nach oben. Steht also für einen Termin in einer Zeile "Reparatur | 13.01.2023 | Arlt", in der nächsten Zeile als weiterer Termin "Wartung | 24.02.2023 | Conrad", dann taucht allerdings im Kalender bei Arlt am 13.01.2023 "Wartung" auf statt Reparatur und so weiter. Der letzte Termin in der Tabelle taucht im Kalender demzufolge gar nicht erst auf.

Ich würde vermuten, dass die Anfang bis Ende-Tabelle versetzt ist, aber wie? Ich komm nicht dahinter.


Das zweite Problem:

In der Termintabelle kann ich logischerweise den Stichtag für einen Termin eintragen. Dazu kommt die Spalte "Tage", welche mir für diesen Termin einen Vorlauf verschafft. Trage ich 4 Tage ein, dann soll der Termin bis zum Stichtag vier Tage vorher täglich eingetragen werden. Dies funktioniert auch in der Beispieltabelle "Dienstplan" vom Benutzer Elex, aber nicht bei mir. bei mir fehlt immer der erste Tag des Termins. Trage ich nur als Stichtag den 13.01. ein, taucht der Termin richtigerweise auch nur am 13.01. auf, genauso wenn ich unter "Tage" eine 1 eintrage. Alles gut soweit. Trage ich unter "Tage" aber eine 2 ein, ändert sich nichts. Erst bei einer 3 wird mir der Termin am 12.01. und am 13.01. eingetragen und so weiter.
Hierbei habe ich schon einige Schnapsideen durchprobiert, komme aber wieder nicht selbst auf die Lösung.


Vielleicht könnt ihr mir hier nochmal weiterhelfen? 

Eine Beispieltabelle kann ich leider nicht hochladen, da die Probleme nur in meinem Dokument auftauchen und sie sich schwer nachbilden lassen. Gerne kann ich auf Anfrage den Helfenden aber das Original zukommen lassen.


Grüße und schönen Abend euch!
Antworten Top
#12
Hola,

Zitat:Eine Beispieltabelle kann ich leider nicht hochladen, da die Probleme nur in meinem Dokument auftauchen 
Und genau dann brauchen wir die Tabelle zum Helfen.
Gruß,
steve1da
Antworten Top
#13
(19.10.2022, 06:50)steve1da schrieb: Hola,

Und genau dann brauchen wir die Tabelle zum Helfen.
Gruß,
steve1da

Und deshalb: "Gerne kann ich auf Anfrage den Helfenden aber das Original zukommen lassen." :)
Antworten Top
#14
Ich bin mir nicht sicher in wie weit ich die Tabelle teilen darf, da sie ja meiner Firma gehört (auch wenn ich der Ersteller bin). Die Veröffentlichung der kompletten Datei ist mir sicherlich nicht erlaubt. Ich werde mal eine auf das Problem reduzierte Version hier reinstellen in der Hoffnung, dass ich nicht zu viel entferne und sie in ihrer Funktion komplett zerstöre...



Edit: 

Ich glaube, ich gehe damit CoC-konform


.xlsx   Termine Test.xlsx (Größe: 271,34 KB / Downloads: 8)
Antworten Top
#15
Code:
...ZEILE(Tabelle1[[Typ]:[Typ]])-1....
[-] Folgende(r) 1 Nutzer sagt Danke an steve1da für diesen Beitrag:
  • Sabotaz
Antworten Top
#16
(19.10.2022, 21:04)steve1da schrieb:
Code:
...ZEILE(Tabelle1[[Typ]:[Typ]])-1....

Großartig! So simpel eigentlich, ich hab Zeilen und Bereiche verschoben in der Quelltabelle, aber nicht gedacht, dass "-1" hier so funktioniert. Dagegen hab ich bei dem anderen Problem mit -1 gespielt im Bereich der Tabelle "Anfang, Ende, Tage". Aber das hat dort nicht geholfen...

Vielen Dank! Wieder einen Schritt weiter!
Antworten Top
#17
So, da ich zu meinem zweiten Problem irgendwie zu keiner Lösung gekommen bin, habe ich es jetzt anders gelöst. Gefällt mir eigentlich nicht, weil ich anhand von Elex´ Tabelle gesehen habe, dass es auch mit weniger Pfusch geht, aber ich kann halt nicht ganz ohne Pfusch :D

Das Problem war:


In der Termintabelle kann ich logischerweise den Stichtag für einen Termin eintragen. Dazu kommt die Spalte "Tage", welche mir für diesen Termin einen Vorlauf verschafft. Trage ich 4 Tage ein, dann soll der Termin bis zum Stichtag vier Tage vorher täglich eingetragen werden. Dies funktioniert auch in der Beispieltabelle "Dienstplan" vom Benutzer Elex, aber nicht bei mir. bei mir fehlt immer der erste Tag des Termins. Trage ich nur als Stichtag den 13.01. ein, taucht der Termin richtigerweise auch nur am 13.01. auf, genauso wenn ich unter "Tage" eine 1 eintrage. Alles gut soweit. Trage ich unter "Tage" aber eine 2 ein, ändert sich nichts. Erst bei einer 3 wird mir der Termin am 12.01. und am 13.01. eingetragen und so weiter.
Hierbei habe ich schon einige Schnapsideen durchprobiert, komme aber wieder nicht selbst auf die Lösung.


Nun habe ich einfach eine weitere Spalte eröffnet, die simplerweise die falschen Szenarien korrigiert: aus 0 mach 0, aus 1 mach 1, aus 2 mach 3, aus 4 mach 5 usw. . Jetzt stimmt die Anzahl der reservierten Tage wieder. 

=WENN(Tabelle1[@Tage]=1;1;WENN(Tabelle1[@Tage]>=1;Tabelle1[@Tage]+1;0))

Zuvor hat die Anfang-Ende-Tabelle direkt den händisch eingegebenen Wert erfragt, nun fragt sie den Wert der obigen Tabelle ab, welche wiederum den händischen Wert abfragt und ändert.

Ich merk nur, dass die vielen WENNs in meinem Dokument nun langsam für Langsamkeit sorgen. Zumindest fühlt sich das Dokument immer träger an :S
Antworten Top


Gehe zu:


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