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

VBA --> Rechnen mit Zeit und Datum

Forumthread: VBA --> Rechnen mit Zeit und Datum

VBA --> Rechnen mit Zeit und Datum
21.07.2003 22:44:59
Holger Nikisch
Hallo,
wiedermal ein Problem bzw. 2 Fragen:
Frage 1:
Wie sieht der VBA Code aus wenn ich mit Zeiten (mit Datum) rechnen möchte.
Zellen - Inhalt:
A1: 01.01.2003 15:00:00
A2: 01.01.2003 15:30:00
A3: 02.01.2003 15:30:00
Berechnung:
z.B. 01.01.2003 15:30:00 - 01.01.2003 15:00:00 = 30 Minuten
z.B. 15:30:00 + 30 Minuten = 16:00:00
z.B. 01.01.2003 15:30:00 + 30 Minuten = 01.01.2003 16:00:00
z.B. 01.01.2003 15:30:00 + 1 Tag = 02.01.2003 15:30:00
Frage 2:
Wie sieht der VBA Code aus wenn ich aus "01.01.2003 15:30:00" 930 Minuten machen möchte
Versteht ihr was ich meine ?
Danke im Vorraus
mfg
Holger Nikisch
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: VBA --> Rechnen mit Zeit und Datum
22.07.2003 08:08:14
Holger Nikisch
Hallo,
schon mal vielen Dank für Eure Hilfe. Es ist wichtig eine VBA Lösung zu finden, da ich in Zukunft viel mit Zeiten rechnen muß.
z.B. Fortschrittzeiten, Einzelzeiten, Gesamtzeiten, Durchschnittzeiten.
Hat mit diesem Problem schon jemanden zu kämpfen gehabt oder hat jemand eine Lösung (sehr gerne VBA).
Danke
mfg
Holger Nikisch

Anzeige
AW: VBA --> Rechnen mit Zeit und Datum
22.07.2003 11:53:25
PeterW
Hallo Holger,
schau mal hier
https://www.herber.de/forum/archiv/search/z.htm
unter Zeit, da gibt es bestimmt Antworten auf einige - wenn nicht alle - deiner Fragen.
Gruß
Peter

AW: VBA --> Rechnen mit Zeit und Datum
22.07.2003 07:04:12
Hajo_Zi
Hallo Holger
Deine forderten Sachen lassen sich alle noch ohne VBA lösen. Es muß nicht an jeder Stelle VBA eingesetzt werden.
Anzeige
AW: VBA --> Rechnen mit Zeit und Datum
21.07.2003 23:30:15
PeterW
Hallo Holger,
schau dir mal diese Mappe und darin besonders die Zellformate von B1:B4 an:
https://www.herber.de/bbs/user/303.xls
Gruß
Peter

;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Rechnen mit Zeit und Datum in VBA


Schritt-für-Schritt-Anleitung

Um mit Zeit und Datum in Excel zu rechnen, insbesondere mithilfe von VBA, kannst du die folgenden Schritte befolgen:

  1. Öffne den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Füge ein neues Modul hinzu: Klicke mit der rechten Maustaste auf „VBAProject (DeineDatei.xlsx)“ > Einfügen > Modul.

  3. Gib den folgenden Code ein:

    Sub ZeitBerechnung()
       Dim StartZeit As Date
       Dim EndZeit As Date
       Dim ZeitDifferenz As Double
    
       StartZeit = Range("A1").Value
       EndZeit = Range("A2").Value
    
       ' Zeitdifferenz berechnen
       ZeitDifferenz = EndZeit - StartZeit
       MsgBox "Die Zeitdifferenz beträgt: " & ZeitDifferenz * 24 * 60 & " Minuten"
    
       ' Zeit hinzufügen
       Range("A3").Value = EndZeit + TimeValue("00:30:00") ' 30 Minuten hinzufügen
       MsgBox "Neue Zeit: " & Range("A3").Value
    End Sub
  4. Führe das Skript aus: Drücke F5 im VBA-Editor oder schließe den Editor und führe das Makro aus Excel aus.


Häufige Fehler und Lösungen

  • Fehler: „Typen unverträglich“: Stelle sicher, dass die Zellen in den von dir verwendeten Bereichen tatsächlich Datums- und Zeitwerte enthalten.
  • Lösung: Zellformat prüfen: Überprüfe das Format der Zellen A1, A2 und A3. Sie sollten im Datums- und Zeitformat formatiert sein.

Alternative Methoden

Falls du nicht mit VBA arbeiten möchtest, kannst du auch die Excel-Funktionen verwenden:

  • Zeitdifferenz berechnen: Verwende die Formel =A2-A1, um die Differenz zwischen zwei Zeitpunkten zu erhalten.
  • Zeit hinzufügen: Du kannst die Formel =A2 + (30/1440) verwenden, um 30 Minuten zu A2 hinzuzufügen. (1 Tag = 1, 30 Minuten = 30/1440)

Praktische Beispiele

Hier sind einige Beispiele, wie du in Excel rechnen mit Zeit und Datum durchführen kannst:

  1. VBA Zeitdifferenz berechnen:

    Dim ZeitDifferenz As Double
    ZeitDifferenz = DateDiff("n", Range("A1").Value, Range("A2").Value) ' In Minuten
  2. VBA Zeit in die Zukunft rechnen:

    Range("A3").Value = DateAdd("n", 930, Range("A1").Value) ' 930 Minuten hinzufügen
  3. Berechnung von Fortschrittzeiten: Angenommen, du hast eine Tabelle für Fortschrittszeiten, kannst du die Zeiten in den jeweiligen Zellen addieren, um Gesamtzeiten zu ermitteln.


Tipps für Profis

  • Optimierung von VBA: Vermeide die Verwendung von MsgBox in Schleifen, um die Ausführungsgeschwindigkeit zu verbessern.
  • Verwendung von benannten Bereichen: Erstelle benannte Bereiche für deine Zeitwerte, um deinen Code lesbarer zu machen.
  • Fehlerbehandlung: Implementiere eine Fehlerbehandlung mit On Error-Anweisungen, um mögliche Laufzeitfehler abzufangen.

FAQ: Häufige Fragen

1. Wie kann ich die Zeit in Stunden, Minuten und Sekunden formatieren?
Du kannst die Formatierung der Zelle anpassen, indem du mit der rechten Maustaste auf die Zelle klickst und „Zellen formatieren“ wählst. Wähle „Uhrzeit“ oder „Benutzerdefiniert“, um das gewünschte Format einzustellen.

2. Was, wenn ich mit Zeit und Wert rechnen möchte?
Du kannst die Werte entsprechend multiplizieren oder addieren. Zum Beispiel, um einen Wert mit einer Zeit zu multiplizieren, verwende eine Formel wie =A1 * B1, wobei A1 die Zeit und B1 der Wert ist.

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