>> [...] das Format von final müsste eigentlich stimmen, [...]
Hach Miki, ;oP
ich erkläre gerne noch mal. :)
1 | "[Datum] = " & CDate (final(1, 0))
|
Die Zeile schaut nach nicht viel aus, aber hier passiert 'ne Menge.
-> CDate wandelt, was auch immer in dem Array-Element steht in ein gültiges Datum um - sofern möglich.
-> Dann wird, dieses Datum mit der Zeichenkette davor verknüpft. Das geht aber nur wenn das Datum als Zeichenkette vorliegt (der Datentyp Date ist keine Zeichenkette).
-> Also wird es in eine Zeichenkette umgewandeln (ge-casted - entspricht quasi CStr(CDate(final(1, 0))) ) und es wird daraus je nach Ländereinstellung des Betriebssystems z.B. 08.01.2018 drauß - das ist so eine Eigenart von VBA bei der Typenkonvertierung nach Zeichenketten (String).
-> Wie ich bereits sagte kann Access mit dieser Zeichenkette aber aber nix anfangen. Es muss als Literal übergeben werden.
z.B.
oder
oder
Wie du siehst kann das schnell ins Auge gehen, weil kannst Du mit absoluter Gewissheit sagen (ohne nachzusehen) wie Access dieses Datum nun interpretiert (US oder UK)? Sicherlich nicht. ;)
Ich rate deshalb dazu, die internationale Schreibweise zu wählen.
Und wie du das in das Format (als zeichenkette) bekommst, habe ich dir bereits gezeigt. :)
Grüße
PS: Ich hab mit Access lange nix mehr gemacht, ich mach hier quasi Blindflug. Falls also irgendwas nicht klappen sollte, einfach Fragen. Kann mich auch mal vertippen oder meine Erinnerung spielt mir einen Streich. ;)
|