Microsoft Excel

Herbers Excel/VBA-Archiv

Zeitermittlung zwischen zwei Datumsfeldern

Betrifft: Zeitermittlung zwischen zwei Datumsfeldern von: Holger
Geschrieben am: 28.07.2008 15:44:26

Sehr geehrtes Forum,

ich habe ein Problem bei einer Auswertung.

Ich möchte die Differenz zwischen zwei Datumsfeldern ermitteln in Stunden abzüglich des Wochenendes.

Feld A1 Feld B1
6.6.08 9:22 9.6.08 9:55

Ich arbeite in einem Krankenhaus und möchte gern ermitteln, wie lang ein bestimmter Prozess vom Anfang bis Ende gedauert hat. Die Zielvorgabe ist ein Prozessende innerhalb von 24 Std. an Wochentage. Hier habe ich das Problem, dass ich nicht weiß, wie man in einer Formel die Wochenendtage (bzw. Wochenendstunden) abzieht.
Mit der Formel Nettoarbeitstage ist mit leider nicht geholfen, da diese ja nur die Tage wiedergibt und ich das ganze in Stundenwerten benötige.

Kann mir jemand helfen?

Mit freundlichen Grüßen
Holger

  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: David
Geschrieben am: 28.07.2008 16:43:15

wenn es ein komplettes Wochenende ist, geht das ganz einfach:


Tabellenblattname: Tabelle1

 

A

B

C

1

06.06.2008 09:22:00

09.06.2008 09:55:00

1,02291666666861

2

5

1

 

3

Freitag

Montag

 


Benutzte Formeln:
C1: =B1-A1-2
A2: =WOCHENTAG(A1;2)
B2: =WOCHENTAG(B1;2)

C1 benutzerdefiniert formatieren: [hh]:mm

1 Tag = 1 somit Sa/So = 2 Tage = 2 subtrahieren von deiner Zeitspanne

Gruß

David


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: Holger
Geschrieben am: 28.07.2008 16:57:03

Hallo David,

vielen Dank für die Antwort.

Ich habe aber mehrere Hundert der Zeilen mit Anfangs- und Endzeitpunkt und mit deiner Lösung müsste ich alle Zeilen manuell durchlaufen, oder liege ich da falsch?

Gruß
Holger

P.S. Ich habe eine Beispieldatei auf den Server hochgeladen: 54180.xls


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: David
Geschrieben am: 28.07.2008 17:06:24

Wenn dein Anfang in Spalte A steht und dein Ende in Spalte B, dann schreibe in C1: =B1-A1-2, anschließend benutzerdefiniert formatieren mit [hh]:mm und dann soweit wie nötig runterkopieren.

Gruß

David

PS: Wenn du eine Datei hochlädst, ist es sinnvoll, den Link mit in die Nachricht zu kopieren, da man sonst nur sehr schwer da ran kommt.


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: Holger
Geschrieben am: 29.07.2008 08:51:48

Guten Morgen David,

vielen Dank nochmal für die schnelle Antwort.
ich habe aber nicht nur Datumsdifferenzen mit Wochenenden dazwischen (dann würde das mit der -2 ja funktionieren), sondern auch Anfangs- und Enddaten, die beide an Werktagen liegen.
Das ist leider mein Problem!

Gruß
Holger


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: Sigi
Geschrieben am: 29.07.2008 09:07:50

Hi Holger,

habe ich das richtig verstanden. Du brauchst die Prozesszeit zwischen zwei Zeiten, aber nur von MO-FR.
In welcher Zeit wird gearbeitet? Von 0 Uhr bis 24 Uhr? Was ist mit Feiertagen?

Eine Formellösung wäre zu aufwändig und umständlich. Darfs auch eine VBA-Lösung sein?

Beschreib dein Problem etwas genauer. Vielleicht kannst du eine Beispieldatei mit dem was da rauskommen soll hochladen (Link kopieren und ins Posting stellen). Ich bin heute längere Zeit außer Haus und würde mich erst abends/nachts wieder melden.

Gruß
Sigi


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: Holger
Geschrieben am: 29.07.2008 09:31:49

Hi Sigi,

es darf auch gerne eine VBA-Lösung sein. Unten findest du einen Link mit einer Beispieldatei.

ich beschreibe dir mal den Prozess:

Ich arbeite in einem Krankenhaus und im Rahmen des QM wird dokumentiert, wann eine Operation stattgefunden hat und zu welchem Zeitpunkt der dazugehörige OP-Bericht im Krankenhaus-EDV-System abrufbar ist.
An Werktagen soll der Zeitraum nicht größer als 24 Stunden sein.
Jetzt kommt es natürlich vor, dass eine OP am Freitag um 17:00 Uhr stattfindet und der OP-Bericht erst am Montag um 10:00 Uhr erscheint. Im Rahmen des QM wäre das aber im Zeitlimit von 24 Std (nämlich 18 Std. nach Abzug des Wochenendes).

Für Samstag und Sonntag müssten jeweils 24 Std. angesetzt werden. Feiertage brauchen nicht berücksichtigt werden. Ich glaube, dass das den Rahmen sprengen würde.

Wenn eine OP an einem Samstag ist und der Bericht montags erscheint, dann müssten 24 Std. für den Sonntag abgezogen werden. Wenn eine OP am Sonntag stattfindet, dann soll nichts abgezogen werden, sondern der Sonntag wie ein Werktag zählen.

Ich hoffe, dass die Beschreibung einigermassen verständlich ist.

Hier der Link:
https://www.herber.de/bbs/user/54187.xls

Gruß
Holger


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: David
Geschrieben am: 29.07.2008 09:37:08

Hallo.

Dein Einwand ist natürlich berechnet.

Folgende Lösungsvorschläge:

Variante 1:

=B32-A32-SUMME(WENN((B32-A32+1-(VERGLEICH("Sa";{"Mo";"Di";"Mi";"Do";"Fr";"Sa";"So"};0)
-WOCHENTAG(A32;2))-WENN(WOCHENTAG(A32;2)>
VERGLEICH("Sa";{"Mo";"Di";"Mi";"Do";"Fr";"Sa";"So"};0);7;0))/7<0;0;
AUFRUNDEN((B32-A32+1-(VERGLEICH("Sa";{"Mo";"Di";"Mi";"Do";"Fr";"Sa";"So"};0)
-WOCHENTAG(A32;2))-WENN(WOCHENTAG(A32;2)>VERGLEICH("Sa";
{"Mo";"Di";"Mi";"Do";"Fr";"Sa";"So"};0);7;0))/7;0));WENN((B32-A32+1
-(VERGLEICH("So";{"Mo";"Di";"Mi";"Do";"Fr";"Sa";"So"};0)-WOCHENTAG(A32;2))
-WENN(WOCHENTAG(A32;2)>VERGLEICH("So";{"Mo";"Di";"Mi";"Do";"Fr";"Sa";"So"};0);7;0))/7<0
;0;AUFRUNDEN((B32-A32+1-(VERGLEICH("So";{"Mo";"Di";"Mi";"Do";"Fr";"Sa";"So"};0)
-WOCHENTAG(A32;2))-WENN(WOCHENTAG(A32;2)>VERGLEICH("So";{"Mo";"Di";"Mi";"Do";"Fr";"Sa";"So"};0);7;0))/7;0)))



Variante 2 (etwas kürzer, dafür als Matrixformel):

{=B1-A1-SUMME(SUMME((WOCHENTAG(ZEILE(INDIREKT(ABRUNDEN(A1;)&":"&ABRUNDEN(B1;)));2)
=VERGLEICH("Sa";TEXT(ZEILE(2:8);"ttt");0))*1);SUMME((WOCHENTAG(ZEILE(INDIREKT(ABRUNDEN(A1;)
&":"&ABRUNDEN(B1;)));2)=VERGLEICH("So";TEXT(ZEILE(2:8);"ttt");0))*1))}



(Matrixformel, {} nicht eingeben, sondern Formel mit STRG-SHIFT-ENTER abschließen)

Bitte prüfe, ob wirklich alle Konstellationen richtig berechnet werden, da mir dazu die Daten fehlen.

Rückmeldung, obs funzt wäre nett.

Gruß

David


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: Holger
Geschrieben am: 29.07.2008 09:54:16

Hi David,

ich habs mit der Matrix-Formel probiert.
Die ersten Ergebnisse sehen gut aus, dann treten leider Fehler auf.

Ich hab dir eine Datei hochgeladen:
https://www.herber.de/bbs/user/54191.xls

Gruß
Holger


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: Holger
Geschrieben am: 29.07.2008 09:57:03

Hi David,

in der Zwischenzeit hat Tobias eine Formel geliefert, die funktioniert.

Vielen Dank für deine Mühe!!!

Gruß
Holger


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: Tobias
Geschrieben am: 29.07.2008 09:33:11

Hallo Holger!
Hilft Dir diese Formel weiter? Ich glaube (keine Garantie) das Ergebnis stimmt.
Startwert in A6, Endwert in B6

=((B6-A6)-ABRUNDEN((B6-A6)/7;0)*2-WENN(WOCHENTAG(B6)<WOCHENTAG(A6);2;0))*24

Schönen Gruß, Tobias
http://www.tobiasschmid.de/


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: Holger
Geschrieben am: 29.07.2008 09:56:06

Hi Tobias,

vielen Dank!

Das Ergebnis passt!!

Gruß
Holger


  

Betrifft: AW: Zeitermittlung zwischen zwei Datumsfeldern von: David
Geschrieben am: 29.07.2008 10:06:57

Nicht schlecht! Manchmal denkt man wirklich zu sehr um Ecken als auf einfache Lösungen zu kommen. Schade, dass die nicht eher kam, hätte mir einiges an Zeit gespart. ;-)

Gruß

David


 

Beiträge aus den Excel-Beispielen zum Thema "Zeitermittlung zwischen zwei Datumsfeldern"