Datum und Uhrzeit: Unterschied zwischen den Versionen

Aus VBA-wiki
Zur Navigation springen Zur Suche springen
(Die Seite wurde neu angelegt: „== Datum angeben == === Datum zuweisen === Wenn Sie ein Datum angeben möchten, empfehlen wir die Angabe des Datums als DIN-Datum: Dim dteDate As Date…“)
 
Keine Bearbeitungszusammenfassung
 
(8 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
== Datum angeben ==
[[Category:vba-wiki]]
Siehe auch [[Rechnen mit Datumswerten]]
 
== Datum und Uhrzeit ==


=== Datum zuweisen ===
=== Datum zuweisen ===
Zeile 9: Zeile 12:
     dteDate = "2015-06-29"
     dteDate = "2015-06-29"


Folgendes ist ebenfalls möglich, sollte jedoch vermieden werden, weil diese Datumsangabe nur in einem deutschen Office eindeutig ist:
Folgendes ist ebenfalls möglich, sollte jedoch vermieden werden, weil diese Datumsangabe nur auf einem deutschen Betriebssystem eindeutig ist (Siehe auch [[Arithmetische_Operatoren_und_Rechenfunktionen#Formatieren|Arithmetische Operatoren und Rechenfunktionen: Formatieren]]):


     dteDate = "29.6.2015"
     dteDate = "29.6.2015"
Zeile 29: Zeile 32:
Die Uhrzeit kann bei der Zuweisung alleine angegeben oder an das Datum angehängt werden. Dabei wird die übliche Schreibweise für Zeitangaben im 24-Stunden-Format verwendet:
Die Uhrzeit kann bei der Zuweisung alleine angegeben oder an das Datum angehängt werden. Dabei wird die übliche Schreibweise für Zeitangaben im 24-Stunden-Format verwendet:


     dteDate = "23:01"
     dteTime = "23:01"
     dteDate = "2015-06-29 23:01"
     dteDateTime = "2015-06-29 23:01"


     dteDate = "23:01:32"
     dteTime = "23:01:32"
     dteDate = "2015-06-29 23:01:32"
     dteDateTime = "2015-06-29 23:01:32"


Die aktuelle Zeit wird mit der Time-Funktion abgefragt:
Die aktuelle Zeit wird mit der Time-Funktion abgefragt:


     dteDate = Time
     dteTime = Time


Das aktuelle Datum inklusive der aktuellen Uhrzeit wird von der Now-Funktion zurückgegeben:
Das aktuelle Datum inklusive der aktuellen Uhrzeit wird von der Now-Funktion zurückgegeben:


     dteDate = Now
     dteDateTime = Now


 
== Datumsangaben und Uhrzeit formatieren ==
== Rechnen mit Datumswerten ==
 
=== Direkte Addition und Subtraktion ===
 
Datumsangaben werden in Double-Werten gespeichert. Die Stellen vor dem Komma bezeichnen die Tage seit dem 30. Dezember 1899. Die Nachkommastellen bezeichnen die Uhrzeit als Anteil eines Tages, wobei 1.0 einen ganzen Tag, 0.5 einen halben Tag (12 Stunden) usw. bedeuten.
 
Das direkte Addieren und Subtrahieren von Datumswerten liefert also die Angabe der Summe bzw. der Differenz in Tagen und Anteilen des Tages:
 
    dteDate = "2015-05-23 23:01:32"
    Debug.Print Now() - dteDate          ' Ergibt  36.6611458333355
 
Bei einem Ergebnis von 36 Tagen können wir davon ausgehen, dass der Unterschied über einen Monat bedeutet. Bei einem Ergebnis von 28 Tagen wäre dies davon abhängig, ob der Monat ein Februar ist und ob dieser in einem Schaltjahr liegt. Um trotzdem zuverlässige Ergebnisse zu erhalten, verwenden Sie bitte die Datumsfunktionen:
 
=== Datumsfunktionen zur Berechnung von Datumsunterschieden ===
 
Bei den Datumsfunktionen wird angegeben, welcher Intervall (Jahr, Monat, tag, Stunde, Minute, Sekunde, ...) betroffen sein soll. Wenn Sie beispielsweise zwei Tage und 3 Stunden addieren möchten, können Sie dies in zwei Schritten tun.
 
==== Mögliche Intervalle ====
 
{| class="wikitable"
! style="text-align:left;" | Angabe
! style="text-align:left;" | Wert
|-
| yyyy
| Jahr
|-
| q
| Quartal
|-
| m
| Monat
|-
| y
| Tag des Jahres
|-
| d
| Tag
|-
| w
| Wochentag
|-
| ww
| Woche
|-
| h
| Stunde
|-
| n
| Minute
|-
| s
| Sekunde
|}
 
==== Liste der Rechenfunktionen ====
 
DateAdd()
DateDiff()
 
==== Rückgabe von Datums- und Zeitangaben ====
 
DatePart()
Day()
Month()
Year()
Hour()
Second()
 
== Datumsangaben formatieren ==


  Format()
  Format()
  FormatDateTime()
  FormatDateTime()
Siehe auch [[Arithmetische_Operatoren_und_Rechenfunktionen#Formatieren|Arithmetische Operatoren und Rechenfunktionen: Formatieren]]

Aktuelle Version vom 28. Januar 2023, 00:38 Uhr

Siehe auch Rechnen mit Datumswerten

Datum und Uhrzeit

Datum zuweisen

Wenn Sie ein Datum angeben möchten, empfehlen wir die Angabe des Datums als DIN-Datum:

   Dim dteDate As Date
   
   dteDate = "2015-06-29"

Folgendes ist ebenfalls möglich, sollte jedoch vermieden werden, weil diese Datumsangabe nur auf einem deutschen Betriebssystem eindeutig ist (Siehe auch Arithmetische Operatoren und Rechenfunktionen: Formatieren):

   dteDate = "29.6.2015"

Außerdem kann das gewünschte Datum mithilfe der DateSerial-Funktion angegeben werden:

   dteDate = DateSerial(2015, 6, 29)

Oder, wenn es in einer anderen Form vorliegt, mit der DateValue-Funktion ermittelt werden (hier muss das Datum von Ihrem System erkannt werden können!):

   dteDate = DateValue("12. Feb 1969")

Das aktuelle Datum wird mit der Date-Funktion abgefragt:

   dteDate = Date

Uhrzeit angeben

Die Uhrzeit kann bei der Zuweisung alleine angegeben oder an das Datum angehängt werden. Dabei wird die übliche Schreibweise für Zeitangaben im 24-Stunden-Format verwendet:

   dteTime = "23:01"
   dteDateTime = "2015-06-29 23:01"
   dteTime = "23:01:32"
   dteDateTime = "2015-06-29 23:01:32"

Die aktuelle Zeit wird mit der Time-Funktion abgefragt:

   dteTime = Time

Das aktuelle Datum inklusive der aktuellen Uhrzeit wird von der Now-Funktion zurückgegeben:

   dteDateTime = Now

Datumsangaben und Uhrzeit formatieren

Format()
FormatDateTime()

Siehe auch Arithmetische Operatoren und Rechenfunktionen: Formatieren