Datumsformat in Access

Hallo,

Ich stehe dem folgenden Problem gegenüber:

Ich habe ein Access Datenbank mit biographischen Daten. Ich habe das Geburtsdatum in einem Textfeld gespeichert, was ich jetzt zum Datumsformat ändern möchte (TT-MM-JJJJ). Manchmal habe ich aber leider nur unvollständige Daten in den Zellen, also statt eines kompletten Geburtsdatums (Tag-Monat-Jahr) nur das Geburtsjahr. Wenn ich das Feldformat von Text auf Datum umstelle, werden die Zellen mit den unvollständigen Daten gelöscht. Wie kann ich das umgehen?

Danke im Voraus.

Grüße:

Geza

Hi Geza,

du wirst wohl Tag, Monat und Jahr trennen müssen. Ein Datum gilt nur als solches, wenn es vollständig ist.

Tabellen leben davon, dass alle Spalten sauber definiert sind. Mit Wünschen wie „mach mir ein Datum, wenn möglich“ ist jede Datenbank überfordert.

Gruß Ralf

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi!

Das Tramepltier hat schon Recht - aber natürlich ist es trotzdem einfach zu lösen ;o))
LEge erstmal in der Tabelle ein Datumsfeld an - nennen wir es mal Korrekturdatum.

Es gibt die Funktion isdate von Access - diese kleine Funktion sollte deine Datenbank bereinigen…

Public Function fncFastChange()
Set mydB = CurrentDb
Set myRS = mydB.OpenRecordset(„select * from tabelle“, dbOpenDynaset)
While Not myRS.EOF
if not isdate(myrs![datumsfeld]) then
myRS.Edit
myRS![korrekturdatum] = datevalue(„01.01.“ & myrs![datumsfeld])
myRS.Update
endif
myRS.MoveNext
wend
End Function

Dann musst du nur noch das alte Feld löschen und das neue umbenenen und fertich is…
Setzt natürlich voraus, daß du nur korrekte Datums hast und wenn falsch dann halt nur das Jahr. Ansonsten musste halt entsprechend die Funktion anpassen!

Bernd

Hi Bernd,

deine Lösung wäre sicher technisch richtig, dann stellt sich aber die Frage, ob jede/r, von dem ich nur das Geburtsjahr kenne, den Geburtstag auf den 1. Januar gelegt haben möchte. Irgendwann will dann jemand wissen, ob das Geburtsdatum eine echtes ist oder nur eine Krücke.

[ot] Die korrekte Anrede lautet nicht das Tramepltier , sondern Monsieur drambeldier (alter verarmter französischer Landadel, geht zurück auf Pippin den Abgebrochenen).

Gruß Ralf

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Hi!

Hi Bernd,

deine Lösung wäre sicher technisch richtig, dann stellt sich
aber die Frage, ob jede/r, von dem ich nur das Geburtsjahr
kenne, den Geburtstag auf den 1. Januar gelegt haben möchte.
Irgendwann will dann jemand wissen, ob das Geburtsdatum eine
echtes ist oder nur eine Krücke.

Sicher ist das auch noch ein Problem, aber irgendwo muss man ja anfangen ;o))

[ot] Die korrekte Anrede lautet nicht das Tramepltier ,
sondern Monsieur drambeldier (alter verarmter
französischer Landadel, geht zurück auf Pippin den
Abgebrochenen).

Nana…sei froh, daß ich mit so armen Leuten überhaupt rede *fggg

Gruß

Bernd