Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Uhrzeit extrahieren

Uhrzeit extrahieren
Stefan
Hallo zusammen
in einer Zelle steht folgendes: 28.11.2011 15:30:21
Wie kann ich daraus die Uhrzeit extrahieren?
.Cells(10,10).NumberFormat = "HH:MM:SS"
.Cells(3,3) = Int(.Cells(2,2))
Dieser Quellcode gibt 00:00:00 aus.
Was mache ich falsch?
Danke Euch.
Anzeige
AW: Uhrzeit extrahieren
28.11.2011 15:27:18
Martin
Hallo Stefan,
=TEXT(A1;"h:mm:ss") ...wobei in Zelle A1 die Zeit steht.
Viele Grüße
Martin
ist doch Text
28.11.2011 16:09:14
Erich
Hi Martin,
als Uhrzeit hätt man doch gern eine Zahl - und keinen Text.
Stefan, probier mal
.Cells(3,3) = .Cells(2,2) - Int(.Cells(2,2))
Da kommt eine Zahl größergleich 0 und kleiner als 1 raus.
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: ist doch Text
28.11.2011 16:27:11
Martin
Hallo Erich,
okay, dann eine Lösung mit Zahl als Ergebnis:
=ZEIT(TEXT(A1;"h");TEXT(A1;"m");TEXT(A1;"s"))

Viele Grüße
Martin
...und es geht noch einfacher...
28.11.2011 16:28:10
Martin

=ZEIT(STUNDE(A1);MINUTE(A1);SEKUNDE(A1))

und es geht noch einfacher...
28.11.2011 17:17:38
Erich
Hi,
wenn es denn schion eine Formel sein soll (bei unserem Fragesteller Stefan sehe ich VBA-Code):
=REST(A1;1)
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: und es geht noch einfacher...
28.11.2011 18:14:54
Martin
Hallo Erich,
ich gebe mich geschlagen, kürzer geht es wohl kaum ;-)
Scheinbar habe ich beim Lesen der Fragestellung geschlafen. Also auf ein Neues:
Range("A1") = Format(Range("A1"), "h:mm:ss")
Gegenvorschlag?
Viele Grüße
Martin
Text oder Zahl?
28.11.2011 18:26:09
Erich
Hi Martin,
what the hell spricht dafür, die Uhrzit als Text, als String auszugeben? Genau das tut Format()!
Meinen VBA-Vorschlag habe ich heute um 16:09:14 abgeliefert...
Guten Morgen!?! ;-))
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige
AW: Text oder Zahl?
29.11.2011 09:28:36
Martin
Hallo Erich,
sorry, ich war einfach nur blind! Irgendwie habe ich deine VBA-Lösung an Anfang überlesen und war der Meinung, dass bis jetzt nur Formel-Lösungen angeboten wurden.
....aber auch wenn "Format" in VBA die Uhrzeit als String ausliest, so erkennt die Zelle den Inhalt trotzdem als Uhrzeit. Darum finde ich meine Lösung auch nicht unbedingt schlechter als deine.
Viele Grüße
Martin
Anzeige
Datum und Uhrzeit: Zahl, nicht Text
29.11.2011 10:21:58
Erich
Hi Martin,
es ging und geht mir überhaupt nicht darum, ob deine oder meine Lösung "schlechter" (in irgend einem Sinne) sei.
Wichtig ist mir Folgendes:
Ein Datum ist in Excel (und VBA) keine Zeichenkette mit zwei Punkten drin, sondern eine Zahl, derzeit über 40800.
Eine Uhrzeit ist hier kein String mit ein oder zwei Doppelpunkten drin, sondern eine nichtnegative Zahl kleiner als 1.
Sich dieser Tatsachen bewusst zu sein, kann oft dabei helfen, Formeln/Programme zu verstehen, auch zu entwickeln.
Beispielsweise bin ich immer mal wieder erstaunt, wie viele Menschen sich die Mühe machen,
eine Formel mit der Fkt. DATEDIF hinzuschreiben, wenn sie nur die Differenz zwischen zwei Terminen in Tagen berechnen wollen.
Man liest dann =DATEDIF(A1;A2;"D") statt êinfach =A2-A1
(und das sogar hier: http://www.excelformeln.de/formeln.html?welcher=141 )
DATEDIF(A1;A2;"D") vernebelt meiner Ansicht nach, dass in den beiden Zellen zwei Zahlen - etwa 40810 und 40833 - stehen,
deren Differenz 40833-40810=23 die Anzahl Tage sofort und auf einfachste Weise ergibt.
Weniger wichtig, aber auch ein Aspekt, unter dem man das betrachten kann:
Aufgabe war, aus einem einer Zahl, einem Wert (Datum+Uhrzeit) eine andere Zahl (Uhrzeit) zu ermitteln.
Excel ist ein Kalkulationsprogramm, das ganz gut mit Zahlen rechnen kann.
Sicher, man kann damit auch Zeichenketten verarbeiten - aber darin liegen wohl nicht die Stärken des Programms.
Wenn man die eine Zahl aus der anderen mitttels einfacher Berechnung direkt ermitteln kann,
warum sollte man erst einen String erzeugen, den Excel vor dem Schreiben in die Zelle wieder in eine Zahl umwandeln muss?
Ich halte das für einen Umweg, den man Excel ersparen kann. Dass sich das z. B. in der Laufzeit heftig auswirkt, glaube ich nicht.
Aber wie gesagt: Dieser Aspekt ist mir weniger wichtig.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige
AW: Datum und Uhrzeit: Zahl, nicht Text
29.11.2011 11:43:10
Martin
Hallo Erich,
mein Lösungsweg über eine Zeichenkette ist wirklich ein Umweg. Ich muss zugeben, dass Zeitberechnungen in Excel nicht wirklich zu meinen Stärken gehören. Besonders stört es mich, dass Excel (das als Kalkulationsprogramm auch mit negativen Zahlen rechnen kann und Datumswerte in Zahlen umrechnet) keine negativen Zeitwerte unterstützt.
Danke für die ausführliche Erklärung.
Viele Grüße
Martin
Anzeige
AW: Datum und Uhrzeit: Zahl, nicht Text
29.11.2011 13:33:50
Erich
Hi Martin,
nun komme ich mir fast wie ein Missionar vor...
Deine Antwort zeigt mir, dass meine Erklärung noch untauglich war. :-(
Excel rechnet keine Datumswerte in Zahlen um - die Datumswerte sind Zahlen.
40800 ist ein Datumswert. Du kannst ihn - per Zellformat - mal als Zahl, in % oder als Datum anzeigen lassen.
Nur die Darstellung variiert. Der Wert bleibt unverändert.
Noch ein Scherz: Dass die Zahl 40800 im Datumsformat als 14.9.2011 angezeigt wird, ist keineswegs sicher.
Wenn du die Option "1904-Datumswerte verwenden" aktivierst, wird 40800 als 15.9.2015 angezeigt.
(Zurückstellen nicht vergessen...)
Was genau meinst zu mit "Zeitwerte" in "keine negativen Zeitwerte unterstützt"?
Es gibt die Uhrzeit, ausgedrückt als Anzahl vergangener Stunden, Minuten und Sekunden seit Mitternacht.
Es kann damit keine negative Uhrzeit geben.
Es gibt auch die Zeitspanne/den Zeitraum zwischen zwei Uhrzeiten. Da man diese auch in
Stunden, Minuten und Sekunden ausdrücken kann, wird das oft mit der Uhrzeit in einen Topf geworfen.
Meist ist es geschickter, eine Zeitspanne nicht in drei, sondern nur in einer Maßeinheit auszudrücken.
Beim 100m-Lauf nimmt man Sekunden (8,756 Sek.), bei der Lohnberechnung nimmt man Stunden
(wenn Stundenlohn gefragt ist). Dann hat man nach 17,25 Stunden soundsoviel verdient.
Es geht hier um die (auch gebrochene) Anzahl von Sekunden oder Stunden, nicht um eine Uhrzeit.
Wenn man so denkt und in Stunden darstellt und rechnet, gibt es auch kein Problem bei mehr als 24 Stunden -
Excel kann mit Zahlen größer als 24 rechnen, der Kunstgriff "eckigen Klammern" im Format ist dann unnötig.
Wenn man so verfährt, hat man auch keinerlei Problem mit Negativ-Zeitspannen,
z. B. einem Gleitzeit-Saldo von -4,75 Stunden. Das Vorzeichen ist dann überhaupt kein Problem.
Wer statt mit -4,75 mit -04:45 rechnet, bereitet sich selbst unnötig Probleme.
In diesem Sinne unterstützt Excel negative "Zeitwerte" natürlich und gut.
nun komme ich mir _ wie ein Missionar vor...
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich
Anzeige
das geht doch auch mit Formeln ...
28.11.2011 16:23:08
Matthias
Hallo
ich würde es so machen ...
Tabelle1

 AB
128.11.2011 15:30:21 15:30:21
2TT.MM.JJJJ hh:mm:ss hh:mm:ss

Formeln der Tabelle
ZelleFormel
B1=A1


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
... oder so:
Tabelle1

 AB
128.11.2011 15:30:2115:30:21
2 hh:mm:ss

Formeln der Tabelle
ZelleFormel
B1=ZEIT(STUNDE(A1);MINUTE(A1);SEKUNDE(A1))


Excel Tabellen im Web darstellen >> Excel Jeanie HTML 4
Gruß Matthias
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Uhrzeit aus Datum extrahieren in Excel


Schritt-für-Schritt-Anleitung

Um die Uhrzeit aus einem Datum in Excel zu extrahieren, kannst Du folgende Schritte befolgen:

  1. Zelle mit Datum und Uhrzeit: Stelle sicher, dass sich in einer Zelle (z.B. A1) ein Datum mit Uhrzeit befindet, z.B. 28.11.2011 15:30:21.

  2. Formel zur Extraktion: Verwende eine der folgenden Formeln, um die Uhrzeit zu extrahieren:

    • Für die Verwendung von Formeln:
      =REST(A1;1)
    • Alternativ:
      =ZEIT(STUNDE(A1);MINUTE(A1);SEKUNDE(A1))
  3. Formatierung: Stelle sicher, dass die Zelle, in der das Ergebnis angezeigt wird, im Zeitformat formatiert ist. Du kannst dies durch Rechtsklick auf die Zelle und Auswahl von "Zellen formatieren" erreichen.


Häufige Fehler und Lösungen

  • Fehler: Ausgabe als 00:00:00: Wenn Du die Formel .Cells(10,10).NumberFormat = "HH:MM:SS" verwendest und die Ausgabe 00:00:00 erhältst, könnte das daran liegen, dass Du die Stunden und Minuten nicht korrekt extrahierst. Achte darauf, die Formeln korrekt zu verwenden, wie oben beschrieben.

  • Fehler: Uhrzeit als Text: Wenn die Uhrzeit als Text ausgegeben wird, kannst Du sie mit =TEXT(A1;"h:mm:ss") umwandeln. Beachte jedoch, dass dies die Uhrzeit als Text darstellt und Du möglicherweise damit nicht rechnen kannst.


Alternative Methoden

Neben den oben genannten Formeln gibt es auch VBA-Methoden, um die Uhrzeit aus einem Datum zu extrahieren:

Range("B1") = Format(Range("A1"), "h:mm:ss")

Diese Methode wandelt das Datum in das Uhrzeitformat um und ist besonders nützlich, wenn Du mit VBA arbeitest.


Praktische Beispiele

Beispiel 1: Wenn in Zelle A1 28.11.2011 15:30:21 steht, dann gibt:

  • =REST(A1;1) in B1 15:30:21 zurück.

Beispiel 2: Um nur die Stunden aus einer Uhrzeit wie 15:30:21 zu extrahieren, verwende:

=STUNDE(A1)

Das Ergebnis in B1 wird 15 sein.


Tipps für Profis

  • Uhrzeit nur Stunden anzeigen: Wenn Du nur die Stunden anzeigen möchtest, kannst Du die Formel =STUNDE(A1) verwenden. Um das Ergebnis als Uhrzeit anzuzeigen, formatiere die Zelle als [hh]:mm:ss.

  • Fehler bei Stundenberechnung: Wenn Excel Stunden falsch zusammenrechnet, stelle sicher, dass die Zellen im korrekten Zeitformat formatiert sind.


FAQ: Häufige Fragen

1. Wie kann ich die Minuten aus einer Zeit extrahieren?
Verwende die Formel:

=MINUTE(A1)

2. Was mache ich, wenn ich ein Datum aus Text extrahieren möchte?
Nutze die Funktion DATWERT, um ein Datum aus einem Text zu extrahieren:

=DATWERT("28.11.2011")

3. Wie extrahiere ich die Uhrzeit aus einem Zeitstempel?
Verwende die Formel:

=REST(A1;1)

4. Excel zählt die Uhrzeiten nicht richtig zusammen, was tun?
Überprüfe die Formatierung der Zellen. Sie sollten als Zeit oder benutzerdefiniert formatiert sein, um korrekt zu funktionieren.

5. Kann ich auch negative Zeitwerte in Excel verwenden?
Excel unterstützt keine negativen Zeitwerte, es sei denn, Du verwendest spezielle Formate oder Berechnungen zur Darstellung von Zeitspannen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige