WENN Funktion bezogen auf einzele Wochenabschnitte
#1
Hallo zusammen,


ich möchte anhand einer Excel Tabelle überprüfen, ob die Aufträge in der Zeit sind. Dazu habe ich eine Spalte @InTime wo Ja/Nein rein soll.

Nun zum komplizierten Teil (zumindest für mich). Wenn eine Störung  von Mo-Mi kommt muss diese am nächsten Tag gelöst sein. Sprich Montag kommt die Störung – spätestens Dienstag gelöst ansonsten Nein.
Wenn Störungen von Do-Sa kommen, dann muss diese innerhalb von 6 Stunden gelöst sein. Also Donnerstag Störung kommt um 8:00 Uhr – gelöst bis 16:00 Uhr sonst Nein.

Mein Problem ist es die Formel auf die Tage anzupassen. Wenn die Störung die ganze Woche spätestens am nächsten Tag behoben sein müsste, würde die Formel wie folgt aussehen.
 
=WENN([@Anmerkungen]>1;"Ja";WENN([@Ende]>=[@Beginn]+2;"Nein";"Ja"))

Angepasst auf 6 Stunden:

=WENN([@Anmerkungen]>1;"Ja";WENN([@Ende]>=[@Beginn]+0,25;"Nein";"Ja"))

Ich bin absolut nicht der Excel Spezialist und wäre für eure Ideen dankbar.
Top
#2
Moin!
Etwas dünn, die Infos.
Prinzipiell musst Du den Wochentag abfragen:
=WENN(WOCHENTAG([@Beginn];2)>3;ZweiteFormel;ErsteFormel)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#3
Wow super,

das passt eigentlich soweit.

Die Formel funktionier super nach der Angabe.

=WENN([@Anmerkungen]>1;"Ja";WENN(WOCHENTAG([@Beginn];2)>3;WENN([@Ende]>=[@Beginn]+0,25;"Nein";"Ja");WENN([@Ende]>=[@Beginn]+2;"Nein";"Ja")))

Eine Sache habe ich jedoch nicht bedacht. Eventuell gibt es dafür auch noch eine Lösung. Betrifft die 6 Stunden. Wenn eine Störung 16:00 Uhr kommt muss diese erst am nächsten Tag bis 09:00 Uhr erledigt sein. Heißt Einsatzzeiten von 07:00 bis 20:00 Uhr. Quasi eine Einschränkung der Arbeitszeiten.
Ich kann natürlich noch mehr Infos geben wenn Sie mir sagen was Sie brauchen.
Top
#4
Hi!
Zwei Sachen:
In Foren ist das "Du" üblich.
Ich wusste, warum ich von den dünnen Infos schrieb.
Du hast da ein typisches Problem, welches sich bei genauerem Nachdenken als Rattenschwanz entwickelt.

Was ist mit Feiertagen, Betriebsferien, …
Welche Regel greift im "Übergang"?
(Samstag kurz vor Feierabend)

Das was das Gehirn innerhalb kürzester Zeit ermittelt, muss einer Formel mühsam beigebracht werden.

Als weiterer Ansatz:
Beginn+2 ist ja falsch.
Richtiger müsste es dann lauten:
ARBEITSTAG.INTL(Beginn;2;11;Feiertage)+REST(Beginn;1)

… und das ist erst der Anfang!  :21:

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#5
Ja, klar,

so n Formel ist mühsam vor allem je mehr man braucht. Und man denkt nicht gleich an alles. Vorallem wenn man noch nicht so bewandert damit ist. Letztendlich für Dinge wie Feiertage reicht mir eigentlich das Anmerkungsfeld.

WENN([@Anmerkungen]>1;"Ja";

Ich werde das aber natürlich trotzdem mal so ausprobieren und versuchen mir das anzueignen. Die Arbeitszeiten sind natürlich sehr entscheiden. Soweit denkt man erst wenn man sieht das es nicht passt. :s
Top
#6
Deshalb würde ich so etwas immer mit VBA (benutzerdefinierte Funktion, UDF) lösen.
Da ist es nämlich erheblich einfacher, nachträgliche Anpassungen vorzunehmen.
Aber das ist letztendlich Geschmackssache, wir haben hier auch Formel-Cracks, die eine Tapete locker aus dem Handgelenk schütteln.  :21:

Gruß Ralf

P.S.:
Um sinnvoll arbeiten zu können, ist eine Musterdatei unabdingbar, deren Aufbau exakt Deiner Arbeitsdatei entspricht.
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#7
Hallöchen,

dann musst Du die Formel um einige Bedingungen erweitern.
Bedingungen kann man u.a. mit logischen Operatoren verknüpfen. Du könntest also etwas in der Art verwenden:


WENN(UND(WOCHENTAG([@Beginn];2)>3;STUNDE([@Beginn];2)>16)...


und / oder Du verschachtelst weiter, ist hier eventuell die bessere Lösung.

WENN(WOCHENTAG([@Beginn];2)>3;WENN(STUNDE([@Beginn];2)>16);.....;
.      \\\|///      Hoffe, geholfen zu haben.
       ( ô ô )      Grüße, André aus G in T  
  ooO-(_)-Ooo    (Excel 97-2019+365)
Top
#8
Hi André!
Da wir beide forengestählte Protagonisten sind, wissen wir, wohin der Zug fährt.  :21:
Hier habe ich aber Interesse, dies mal mittels UDF zu lösen.
(aussagekräftige Beispieldatei vorausgesetzt)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top


Gehe zu:


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