Inhalte

# Funktion CDateFromIso

Gibt aus einer Zeichenfolge mit einem Datum im ISO-Format eine Datumszahl im internen seriellen Format zurück (YYYYMMDD oder YYYY-MM-DD).

Die Jahreszahl muss entweder 2 (was aus Gründen der Kompatibilität nur in dem Format YYMMDD ohne die jeweiligen Separatoren möglich ist) oder eben dann mindestens 4 Ziffern enthalten. Bei Jahreszahlen kleiner als 4 Ziffern, beispielsweise dem 09. Mai 658, muss die Null vorangestellt werden, also beispielsweise 09.05.0658. Bei Zeitangaben vor unserer Zeitrechnung (auch bekannt als B.C. - Before Christ) kann die Jahreszahl ebenfalls mehr als vier Ziffern beinhalten, falls deren Betrag größer als 9999 ist. Die formatierte Zeichenfolge kann derzeit im Bereich "--327680101" bis "327671231" oder "01.01.-32768" bis "31.12.32767" liegen.

Ein ungültiges Datum führt zu einem Fehler. Das Jahr 0 gibt es nicht, der letzte Tag vor unserer Zeitrechnung ist der 31.12.-0001 und der nächste Tag unserer Zeitrechnung der 01.01.0001. Daten vor dem 15.10.1582 liegen im Gregorianischen Kalender.

Wenn eine serielle Datumsangabe in eine druckbare Zeichenfolge konvertiert wird, beispielsweise für die Befehle Print oder MsgBox, wird der Standardkalender des Gebietsschemas verwendet und das zusammengesetzte Datum 15.10.1582 kann in den Julianischen Kalender wechseln, wodurch ein anderes Datum als erwartet angezeigt wird. Verwenden Sie die Funktion CDateToIso, um solch eine Datumsangabe in eine Zeichenfolge zu konvertieren, die dem Gregorianischen Kalender entspricht.

Das Format JJJJ-MM-TT mit Separatoren wird seit LibreOffice 5.3.4 unterstützt. Jahreszahlen kleiner als 100 oder größer als 9999 werden seit LibreOffice 5.4 akzeptiert, sofern nicht im VBA-Kompatibilitätsmodus.

## Syntax:

    CDateFromIso(String)

## Rückgabewert:

Interner Datumswert

## Parameter:

String: Eine Zeichenfolge, die einem Datum im ISO-Format entspricht.

### Fehlercodes:

5 Ungültiger Prozeduraufruf

## Beispiel:

        dateval = CDateFromIso("20021231")
        dateval = CDateFromIso("2002-12-31")

gibt beides "31.12.2002" im Datumsformat Ihres Systems zurück

Bitte unterstützen Sie uns!