Kombiniertes Datum/Zeit-Feld separieren

Ich möchte meine Access-Daten an einen Kollegen weitergeben, der statt Access Filemaker Pro, also eine Xbase-Datenbank mit DBF-Dateien verwendet. Leider gelingt es uns nicht, die Daten von Access korrekt in das passende DBF-Format zu exportieren: Nach dem Export der kombinierten Datum/Zeit-Felder aus Access bleibt in der DBF-Datei immer nur das Datum übrig. Um das Problem zu umgehen, möchte ich nun innerhalb von Access Datum und Zeit in je zwei separaten Feldern speichern. Kennen Sie einen Weg, wie ich das kombinierte Access-Datumsfeld in zwei Felder mit Datum und Zeit aufsplitten kann?

Seit Dbase seine Stellung als Standard verloren hat, kommt es immer wieder zu Problemen mit den verschiedenen Versionen von DBF-Formaten in Dbase und Foxpro. Wenn Sie das Problem durch die Aufteilung des Datum/Zeit-Feldes beheben wollen, kann Ihnen eine Aktualisierungsabfrage weiterhelfen.
Angenommen, Sie wollen die beiden Access-Datum-Felder Beginn und Ende in die Felder AnfangsDatum, StartZeit sowie EndDatum und EndZeit zerlegen. Dazu legen Sie zunächst in der Access-Tabelle für jedes Datum/Zeit-Feld ein Datum- und ein Zeitfeld vom Typ Datum/Zeit an. Access fügt dann leere Felder in der Tabelle ein. Wenn Sie die leeren Felder mit Daten füllen wollen, kommt die Aktualisierungsabfrage ins Spiel.
Um die Abfrage anzulegen, markieren Sie die Tabelle, rufen den Befehl Einfügen – Abfrage auf und wählen die Option Entwurfsansicht aus. Access zeigt dann das Entwurfsfenster für Abfragen an. Mit dem Befehl Abfrage – Aktualisierungsabfrage wird aus der Selektionsabfrage eine Aktualisierungsabfrage, die Ihre Tabelle ändert.
Ziehen Sie dann die Felder Anfangsdatum und Enddatum aus der Feldliste in das Entwurfsraster. Was die Abfrage aktualisieren soll, legen Sie in der Zeile Aktualisieren fest. Geben Sie dort folgende Funktionen ein:

DatSeriell (Tag ([Beginn]); Monat ([Beginn]); Jahr (  [Beginn]))¶
DatSeriell (Tag ([Ende]); Monat ([Ende]); Jahr ([Ende]))¶
Die Funktion DatSeriell() wandelt die Informationen über Tag, Monat und Jahr in den Access-Datentyp Datum/Zeit um. Die Funktionen Tag(), Monat() und Jahr() ermitteln die nötigen Daten des Originaldatums. Analog dazu können Sie auch die Felder Anfangszeit und Endzeit berechnen:
ZeitSeriell (Stunde ([Beginn]); Minute ([Beginn]);0)¶
ZeitSeriell (Stunde ([Ende]); Minute ([Ende]);0)¶
Wenn Sie die Aktualisierungsabfrage ausführen, wird Access die neuen Datums- und Zeitfelder mit den vorhandenen Daten füllen.