Hallo Dieter,
Erstelle eine Tabelle:
Die Tabelle heißt "T1", Das Feld des Beginndatums heißt "A", Das Feld des Endedatums heißt "B", wobei das Feld B größer als das Feld A sein soll.
Erstelle eine Abfrage unter "neu" > Entwursansicht > das erscheinende Feld > schließen
>gehe in die SQL-Ansicht und füge folgenden Code ein:
SELECT T1.A, T1.B, DateDiff("yyyy",[A],[B])+(Format([A],"mmdd")>Format([B],"mmdd")) & " Jahre " & (Month([B])-Month([A])+(Day([A])>Day([B]))+12) Mod 12 & " Monate " & Day([B])-Day([A])+IIf(Day([A])>Day([B]),Day(DateSerial(Year([A]),Month([A])+1,0)),0) & " Tage" AS Methode2_AMonatTage
FROM T1
ORDER BY T1.A, T1.B;
Die Ausgabe erfolgt dan z.B.:
A= 01.01.201, B= 22.03.2014
3 Jahre 2 Monate 21 Tage
Gruß
Paul1
getestet mit Access 2003