Access-Funktionen: Datum und Zeit

Datums- und Zeitangaben lassen sich unter Access hervorragend verwalten – wenn man weiß, wie es richtig funktioniert. Dieser Artikel zeigt, welche Funktionen Access zum Verarbeiten von Datums- und Zeitangaben in Ausdrücken und unter VBA bietet.

Beispiele

Die Beispiele dieses Artikels finden Sie in der Beispieldatenbank Access_Basics_2011_04.mdb.

Zeitfunktionen

In den folgenden Abschnitten lernen Sie die folgenden Zeitfunktionen kennen (erste Angabe: deutscher Name, in Klammern: englischer Name der Funktion):

  • Datum (Date): Gibt das aktuelle Systemdatum zurück.
  • Zeit (Time): Gibt die aktuelle Systemzeit zurück.
  • Jetzt (Now): Gibt das aktuelle Systemdatum und die aktuelle Systemzeit zurück.
  • IstDatum (IsDate): überprüft, ob ein Ausdruck in einen Wert vom Datentyp Datum/Uhrzeit konvertiert werden kann.
  • ZDate (CDate): Wandelt eine gültige Datumseingabe in den Datentyp Datum/Uhrzeit um.
  • Jahr (Year): Extrahiert die vierstellige Jahreszahl aus einem Datum.
  • Monat (Month): Extrahiert den Monat (1-12) aus dem Datum.
  • Tag (Day): Extrahiert den Tag (1-31) aus dem Datum.
  • Stunde (Hour): Extrahiert die Stunde (0-23) aus dem Datum.
  • Minute (Minute): Extrahiert die Minute (0-59) aus dem Datum.
  • Sekunde (Second): Extrahiert die Sekunde (0-59) aus dem Datum.
  • DatTeil (DatePart): Liefert einen durch einen Parameter bestimmten Teil des Datums.
  • Wochentag (Weekday): Liefert den Wochentag des Datums.
  • DatSeriell (DateSerial): Fügt aus den Komponenten Jahr, Monat und Tag einen Wert vom Datentyp Datum/Uhrzeit zusammen.
  • ZeitSeriell (TimeSerial): Fügt aus den Komponenten Stunde, Minute und Sekunde einen Wert vom Datentyp Datum/Uhrzeit zusammen.
  • DatAdd (DateAdd):    Addiert ja nach Parameter Jahre, Monate, Tage, Stunden, Minuten oder Sekunden zum angegebenen Datum hinzu.
  • DatDiff (DateDiff): Liefert die Anzahl der Zeitintervalle eines bestimmten Intervalls, die zwischen zwei Daten liegen.

Die deutsche Variante der Funktionen können Sie in der deutschsprachigen Version statt der englischen in Ausdrücken verwenden, also beispielsweise in Werten oder Kriterien in Abfragen oder als Eigenschaften von Formularen, Berichten oder Steuerelementen. Die englischen Varianten verwenden Sie in VBA-Code.

Sie können die englischen Bezeichnungen auch in Ausdrücken angeben, diese werden jedoch in der deutschen Version von Access in die deutschen Bezeichnungen umgewandelt. In Ausdrücken verwenden Sie das Semikolon als Trennzeichen zwischen den einzelnen Parametern, unter VBA das Komma.

Aktuelles Datum und aktuelle Zeit ermitteln

Die Funktionen Datum, Zeit und Jetzt liefern Informationen über die aktuelle Systemzeit. Datum ermittelt nur das Datum (1.1.2011), Zeit nur die Zeit (13:23:10) und Jetzt liefert beide Komponenten zusammen (1.1.2011 13:23:10).

Die Funktionen können Sie beispielsweise einsetzen, um den Zeitpunkt des Anlegens eines Datensatzes in einer Tabelle zu speichern. Dazu tragen Sie einfach die gewünschte Funktion für die Eigenschaft Standardwert des Feldes zum Speichern dieser Information ein (siehe Bild 1). In diesem Fall soll die Funktion Jetzt gleich Datum und Uhrzeit gemeinsam in das Feld eintragen. Als Datentyp legen Sie optimalerweise Datum/Uhrzeit fest.

Anlegen einer Datumsfunktion als Standardwert eines Tabellenfeldes

Bild 1: Anlegen einer Datumsfunktion als Standardwert eines Tabellenfeldes

Die Funktionen Datum, Zeit und Jetzt werden auch gern in Berichten eingesetzt. Wenn Sie beispielsweise jeweils das aktuelle Datum im Seitenfuß der Berichts anzeigen möchten, öffnen Sie diesen in der Entwurfsansicht, fügen dem Seitenfußbereich ein neues Textfeld hinzu und tragen für seine Eigenschaft Steuerelementinhalt den Ausdruck =Datum() ein (siehe Bild 2).

Verwenden einer Datumsfunktion im Seitenfuß eines Berichts

Bild 2: Verwenden einer Datumsfunktion im Seitenfuß eines Berichts

Datum und Zeit als Parameter angeben

In den folgenden Abschnitten werden wir oft Datum- und Zeitangaben als Parameter verwenden. Die Frage ist: Welche Formate sind hier zulässig Es gibt einige Standardformate, die in allen Umgebungen arbeiten und einige landesspezifische Formate.

In Deutschland können Sie ein Datum beispielsweise als 1.1.2011, 1. Jan 2011 oder 1. Januar 2011 angeben.Bei einem englischen Betriebssystem werden diese Angaben als Parameter von Datumsfunktionen zu Fehlern führen. Umgekehrt kommt ein deutsches System nicht mit englischen Formaten zurecht.

Nichts verkehrt machen Sie, wenn Sie ein allgemeingültiges Format verwenden. Dieses lautet beispielsweise yyyy/mm/dd hh:nn:ss, wobei nn für Minuten steht (die anderen Abkürzungen sollten selbsterklärend sein).

Prüfen, ob ein Wert ein gültiges Datum ist

Mit der Funktion IstDatum (IsDate) prüfen Sie, ob ein Datum ein gültiges Datum ist. Das zu prüfende Datum geben Sie dabei als Parameter an. Im Direktfenster des VBA-Editors (Tastenkombination Strg + G) prüfen Sie die Gültigkeit eines Datums beispielsweise mit der folgenden Anweisung:

  IsDate("1.1.2010")
Wahr

Wenn der Parameter kein gültiges Datum liefert, gibt die Funktion den Wert False zurück. Das gilt sowohl für Daten im falschen Format als auch für ungültige Datumsangaben:

  IsDate("1. January 2010")
Falsch
  IsDate("29.2.2011")
Falsch

Werte in Datum umwandeln

Werte, die noch nicht im Datumsformat vorliegen, können Sie mit der Funktion ZDate (CDate) in den Datentyp Datum/Zeit konvertieren. ZDate liefert einen Fehler, wenn Sie versuchen, eine ungültige Angabe in ein Datum zu konvertieren (siehe Bild 3). Dabei ist die Funktion teilweise schwer einzuschätzen. Während die IstDatum-Funktion zum Beispiel eine Zahl wie 33333 nicht als Datum erkennt, wandelt die ZDatum-Funktion diesen Wert in ein Datum um:

Das Konvertieren ungültiger Datumsangaben liefert eine Fehlermeldung.

Bild 3: Das Konvertieren ungültiger Datumsangaben liefert eine Fehlermeldung.

  CDate(33333)
05.04.1991

Möchten Sie weiterlesen? Dann lösen Sie Ihr Ticket!
Hier geht es zur Bestellung des Jahresabonnements des Magazins Access [basics]:
Zur Bestellung ...
Danach greifen Sie sofort auf alle rund 400 Artikel unseres Angebots zu - auch auf diesen hier!
Oder haben Sie bereits Zugangsdaten? Dann loggen Sie sich gleich hier ein:

Schreibe einen Kommentar