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…“)
 
Zeile 43: Zeile 43:
     dteDate = Now
     dteDate = Now


== 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 ==
== Datumsangaben formatieren ==

Version vom 10. Oktober 2018, 14:28 Uhr

Datum angeben

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 in einem deutschen Office eindeutig ist:

   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:

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

Die aktuelle Zeit wird mit der Time-Funktion abgefragt:

   dteDate = Time

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

   dteDate = Now


Datumsangaben formatieren

Format()
FormatDateTime()