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

Forumthread: Sekunden-Zeitdifferenz per VBA berechnen

Sekunden-Zeitdifferenz per VBA berechnen
08.04.2005 22:52:06
Springer
Hallo,
ich probiere jetzt schon eine ganze Weile per VBA die Differenz von älteren Uhrzeiten zur aktuellen Uhrzeit zu bilden! Kann mir vielleicht jemand sagen, was ich hier falsch mache?! Am liebsten hätte ich die Differenz als ganze Zahl in Sekunden. Mein Lösungsweg geht leider nicht:

Sub Zeitdifferent()
Dim alteZeit As Date
alteZeit = "22:49:00"
MsgBox (Time - alteZeit)
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sekunden-Zeitdifferenz per VBA berechnen
08.04.2005 23:25:51
Ramses
Hallo
Option Explicit

Sub Zeitdifferent()
Dim alteZeit As Date
'alteZeit = Aktuelle Zeit - 30 Minuten
alteZeit = Time - TimeSerial(0, 30, 0)
MsgBox (Time - alteZeit) * 24 * 60 * 60
End Sub

Gruss Rainer
Danke, genau das habe ich gesucht!
09.04.2005 00:00:28
Springer
Vielen Dank! Darauf wäre ich nie gekommen! Geht einwandfrei!
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Sekunden-Zeitdifferenz per VBA berechnen


Schritt-für-Schritt-Anleitung

Um die Zeitdifferenz zwischen einer alten Uhrzeit und der aktuellen Zeit in Sekunden zu berechnen, kannst Du das folgende VBA-Skript verwenden:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu starten.
  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.
  3. Füge den folgenden Code ein:
Sub Zeitdifferent()
    Dim alteZeit As Date
    ' Setze die alte Zeit auf eine spezifische Uhrzeit
    alteZeit = "22:49:00"
    ' Berechne die Differenz zur aktuellen Zeit in Sekunden
    MsgBox (Time - alteZeit) * 24 * 60 * 60
End Sub
  1. Drücke F5, um das Skript auszuführen. Du erhältst eine Meldung mit der Zeitdifferenz in Sekunden.

Häufige Fehler und Lösungen

  • Fehler: Die Ausgabe ist keine ganze Zahl.

    • Lösung: Stelle sicher, dass Du die Differenz mit * 24 * 60 * 60 multiplizierst, um die Zeit in Sekunden zu konvertieren.
  • Fehler: Die alte Zeit wird nicht korrekt gesetzt.

    • Lösung: Achte darauf, dass das Format der Uhrzeit korrekt ist, z.B. hh:mm:ss.

Alternative Methoden

Falls Du die Zeitdifferenz ohne VBA berechnen möchtest, kannst Du auch einfache Excel-Formeln verwenden:

  • Excel Formel: Setze die alte Zeit in Zelle A1 und verwende die folgende Formel in Zelle B1, um die Differenz in Sekunden zu berechnen:
=(JETZT()-A1)*86400

Hierbei wird JETZT() verwendet, um die aktuelle Uhrzeit mit Sekunden zu bekommen.


Praktische Beispiele

Angenommen, Du möchtest die Zeitdifferenz zwischen einer alten Uhrzeit und der aktuellen Zeit berechnen, die in Zelle A1 steht. Hier ist ein Beispiel:

  1. In Zelle A1: 22:49:00
  2. In Zelle B1:
=(JETZT()-A1)*86400

Das Ergebnis in B1 zeigt die Zeitdifferenz in Sekunden.


Tipps für Profis

  • Verwende die Funktion TimeSerial, um Zeitwerte dynamisch zu erstellen. Zum Beispiel:
alteZeit = Time - TimeSerial(0, 30, 0) ' 30 Minuten von der aktuellen Zeit abziehen
  • Wenn Du die Zeitdifferenz in Minuten berechnen möchtest, kannst Du die Berechnung einfach anpassen:
MsgBox (Time - alteZeit) * 24 * 60 ' Zeitdifferenz in Minuten

FAQ: Häufige Fragen

1. Wie kann ich die Zeitdifferenz in Minuten berechnen?
Verwende die bereits erwähnte VBA-Anpassung, um die Differenz in Minuten zu erhalten, indem Du mit * 24 * 60 multiplizierst.

2. Was passiert, wenn die alte Zeit in der Zukunft liegt?
In diesem Fall wird die Zeitdifferenz negativ. Du kannst die Funktion Abs() verwenden, um den absoluten Wert zu bekommen.

3. Wie kann ich die aktuelle Zeit mit Sekunden anzeigen?
Verwende einfach Time, um die aktuelle Zeit zu erhalten, oder Now, um auch das Datum einzuschließen.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige