Uhrzeit "filtern"
#1
Hallo zusammen,

ich möchte Uhrzeiten herausfiltern oder wie man es nennt. Also folgendes:
Wenn in Zelle A1 die Uhrzeit 20:50 und in Zelle B1 21:24 steht soll Zelle C1 die Zeit Zwischen 21 und 6 Uhr berechnen, somit würde in Zelle C1 0:24 stehen müssen. Wie kann ich dies bewerkstelligen?


ISt schon eine Herausforderung für mich mit Uhrzeiten zu rechen. Ich danke schonmal für jeden kleinen Hinweis.
Antworten Top
#2
Hallo i...,

du suchs die Länge der Schnittmenge zweier Intervalle. Das ist die Differenz des Minimum der Obergrenzen und des Maximum der der Untergrenzen, wenn sie größer als 0 ist (eine Schnittmenge also vorhanden ist).

Bei Uhrzeiten sind noch zwei Dinge zu beachten:

1. Wenn Bis kleiner als Von ist, dann muss zum Bis noch 1 addiert werden, da Folgetag.
2. Wenn Von < 6:00, dann ist das gesuchte Intervall nicht zwischen 21:00 und 6:00 Uhr des Folgetages, sondern zwischen 0:00 und 6:00

In der Anlage die Herleitung (E:G) und hier die Formeln

1. wenn von immer >= 6:00 (Spalte C)
Code:
=MAX(0;MIN(B3+(B3<A3);WERT("6:00")+1)-MAX(A3;WERT("21:00")))

2. wenn Von auch kleiner als 6:00 sein kann (Spalte J)
Code:
=MAX(0;MIN(B3+(B3<A3);WERT("6:00")+1*(A3>=WERT("6:00")))-MAX(A3;(A3>=WERT("6:00"))*WERT("21:00")))


Auch aus arbeitsrechtlichen Gründen darf hier nicht Von kleiner als 6 und Bis größer als 21 sein.


Angehängte Dateien
.xlsx   Von 21_6.xlsx (Größe: 9,86 KB / Downloads: 7)
helmut

Für mich ist die Möglichkeit in Excel an Zellen und Bereichen Namen zu vergeben die wichtigste Funktionalität.
Sie macht Formeln und den VBA-code verständlicher. Für Makros gilt die Regel: "Nur über benannte Bereiche auf den Inhalt der Zellen zugreifen."
Und wofür sind Regeln da? Um nachzudenken bevor man sie bricht.





[-] Folgende(r) 2 Nutzer sagen Danke an Ego für diesen Beitrag:
  • infostud, Phipz87
Antworten Top
#3
Hallo Helmut,

das hat mir sehr weiter geholfen. Herzlichen Dank für die Erklärung und schnelle Reaktion.
Auf die Lösung wäre ich in den nächsten Tagen nicht gekommen....
Antworten Top
#4
HAllo zusammen,

die Formel ist sehr gut. Nun möchte ich meine Tabelle erweitern und dementsprechend die Formel anpassen.

Dazu die angehängte Datei:
In Spalte A ist das Datum und der Monat muss auch gewählt werden (A1), somit soll die Formel nicht für jede Zeile einzeln berechnet werden (wie in Spalte F) sondern für einen Bereich (Monat) und in C3 ausgegeben werden.


Noch verstehe ich auch das Ergebnis dieser Formel nicht wirklich:
Code:
=WENN(UND(Tabelle1[von]="";Tabelle1[bis]="");"";MAX(0;MIN(Tabelle1[bis]+Tabelle1[bis]<Tabelle1[von]);WERT("6:00")+1*Tabelle1[von]>=WERT("6:00")))-MAX(Tabelle1[von];(Tabelle1[von]>=WERT("6:00"))*WERT("21:00"))

ich müsste da noch folgendes einfügen:
Code:
=SUMMENPRODUKT((TEXT(Tabelle1[Datum];"MMMM")=$A$1)*(Tabelle1[Dauer]<>"")*Formel;Tabelle1[Dauer])

Die obige Formel müsste doch hier dann an dieser Stelle "Formel" eingefügt werden.

ich verstehe es nicht... Habt ihr einen Tipp für mich? Vielleicht erkennt jemand meinen Denkfehler?


 Warum ich in F6ff. nur ######## stehen habe weiß ich gerade auch nicht, obwohl ich WENNFEHLER eingefügt habe....


Viele Grüße
infostud


Angehängte Dateien
.xlsx   NachtHilfe.xlsx (Größe: 15,33 KB / Downloads: 3)
Antworten Top
#5
Hallo infostud,

diese Zeit ist negativ! Einfach mal die Zelle als Standard formatieren, dann siehst du es!
Ich würde sagen, deine Formel fängt nicht alle Fallkonstellationen ab.
Auch über Mitternacht (23:00-2:00) geht damit nicht.

Gruß Sigi
Antworten Top
#6
uiuiui, wo du Recht hast, hast du Recht. Da hab ich mal zur Probe über Mitternacht was eingegeben und ja es klappt tatsächlich nicht.

Mist!!!

Mittlerweile habe ich das vorherige Prblem noch nicht ganz edel gelöst:

Ich habe eine Hilfsspalte erstellt, wo die einzelnen Zeilen berechnet werden und dann mit

Code:
=SUMMENPRODUKT((TEXT(Tabelle1[Datum];"MMMM")=$A$1)*(Tabelle1[Nachtarbeit]<>"");(Tabelle1[Nachtarbeit]))

zusammengefasst.
Hier habe ich nun das Problem, der richtigen Darstellung. D.h. ich möchte das Ergebnis in Dezimal dargestellt haben und müsste *24 eintragen, allerdings da bekomme ich wieder eine Fehlermeldung auch wenn ich die Zelle formatiere.....
=SUMMENPRODUKT((TEXT(Tabelle1[Datum];"MMMM")=$A$1)*(Tabelle1[Nachtarbeit]<>"");(Tabelle1[Nachtarbeit])*24)
Antworten Top
#7
Hi,

schon mal =SUMMENPRODUKT(xxx)*24 probiert?
Gruß,
Helmut

Win10 - Office365 / MacOS - Office365
[-] Folgende(r) 1 Nutzer sagt Danke an HKindler für diesen Beitrag:
  • infostud
Antworten Top
#8
Vielen lieben Dank!!! Das hat geholfen 17 

Ich würde das ganze etwas hübscher lösen wollen, also ohne die Zwischenspalte Nachtarbeit.
Antworten Top


Gehe zu:


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