Seite 1 von 1

Datum in xls immer 01.01.1900

Verfasst: Mo, 10. Aug 2015 14:37
von Koverhage
Wenn ich aus einer DBF Datumsfelder in eine Excel-Tabelle übertrage
wird 01.01.1900 angezeigt / eingetragen wenn das DBF Feld keinen Wert enthält.
Z.B. Datum letzte Rechnung, wenn noch keine Rechnung erstellt wurde.
Was kann ich tun, damit die Excel Zelle leer bleibt ?

Re: Datum in xls immer 01.01.1900

Verfasst: Mo, 10. Aug 2015 14:57
von brandelh
Am besten das Datum nicht als Datum übergeben.
Ein "leeres Datum" für Excel ist nunmal der 01.01.1900, da Excel mit einem Offsetwert arbeitet.

Falls du die Zellen selbst ansprichst, kannst du ja schon auf Xbase++ Seite die leeren Felder aussparen.
Ansonsten würde ich die Info als Text übergeben.

PS: mit der DLL Version HBLibXl gibt es solche Probleme nicht ;-)

Re: Datum in xls immer 01.01.1900

Verfasst: Mo, 10. Aug 2015 15:16
von Koverhage
Hallo Hubert,

wie soll ich die Felder in einem Array aussparen ?

Ich mache das so:

Code: Alles auswählen

 aDaten := { kd->kdnr, ;
                    kd->bezeich, ;
                    iif(!empty(kd->d_l_rech),dtoc(kd->d_l_rech), ""), ;
                    kd->kkarte }

Re: Datum in xls immer 01.01.1900

Verfasst: Mo, 10. Aug 2015 15:47
von Wolfgang Ciriack
Hast du mal space(10) statt "" ausprobiert ?

Re: Datum in xls immer 01.01.1900

Verfasst: Mo, 10. Aug 2015 16:33
von brandelh
bei ActiveX würde ich Nil als leer übergeben

Re: Datum in xls immer 01.01.1900

Verfasst: Mo, 10. Aug 2015 19:08
von Wolfgang Ciriack
bei ActiveX würde ich Nil als leer übergeben
Aber vielleicht sieht Excel ja Leerzeichen als Text und stellt damit nicht 1.1.1900 bei leerem Feld dar ?

Ansonsten nach der Übergabe - falls du es mit ActiveX machst, die Spalte als Text formatieren.