Anmelden

View Full Version : Jahr im Datum ändern - steh auf dem Schlauch



Seiten : 1 [2]

Fuerchau
04-07-18, 13:49
Ich habe mir da mal eine "DateSerial"-Funktion gebastelt (aus VBA):

MyDate = %date('0001-01-01') + %Years(n - 1) + %Months(n - 1) + %days(n - 1);
Der Vorteil dieser Basis-Funktion ist ebenso, dass "n" einen beliebigen Wert +/-, also auch 0 enthalten kann.
Beispiel:

MyDate = %date('0001-01-01') + %Years(2018 - 1) + %Months(6 - 1) + %days(0 - 1);
Ergebnis => 2018-05-31

Und somit lässt sich deine Anforderung auch relativ leicht ohne Hilfsvariablen rechnen:

MyDate = %date('0001-01-01') + %years(%subdt(%date:*YEARS) - 2);

PS:
Die Funktion mittels dem "work = '01.01.' + %char(jjjj);" funktioniert nur, wenn das Datumformat des Programmes auf *EUR steht. Ich würde hier grundsätzlich *ISO empfehlen.