Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Text-Daten aus Excel exportieren (https://www.delphipraxis.net/53194-text-daten-aus-excel-exportieren.html)

Michaela_ 12. Sep 2005 07:41

Datenbank: ADO • Zugriff über: TADOTable

Text-Daten aus Excel exportieren
 
Hallo,

ich habe ein Problem das mich in den Wahnsinn treibt.
Ich lese Daten aus einem Excel Sheet mittels den ADO Komponenten aus. Bis hierhin kein Problem.

In den Excel Dateien befindet sich nur Text in verschiedenen Sprachen, Sprich der Text ist im Unicode Format und wird in Excel auch so angezeigt. Wenn ich jetzt über ADO die Tabelle öffne so sind die meisten Spalten nicht als TWideStringField definiert. Ganz wenige sind es, obwohl alle Spalten im Excel die selbe Formatierung haben (Text). Auch ein auslesen des Feldes über einen Blob Stream ergibt immer nur einen Ansi String.

Hat vielleicht jemand eine Idee wie ich das Problem lösen kann?

was ich noch vergessen habe...
Die Felder beinhalten mehr als 255 Zeichen. Wahrscheinlich werden die dann zu TMemoField umgewandelt.



lg,
Michaela

shmia 12. Sep 2005 09:20

Re: Text-Daten aus Excel exportieren
 
Du kannst dir doch die Feldtypen anzeigen lassen:
Delphi-Quellcode:
for i:=0 to dataset.Fields.count-1 do
   s := s + dataset.Fields[i].Fieldname+ ' - ' + dataset.Fields[i].Classname+ #13#10;
ShowMessage(s);
Du könntest evtl. auch auf das unterliegende Recordset zugreifen:
Delphi-Quellcode:
var feldinhalt : WideString;
begin
   feldinhalt := ADOQuery1.Recordset.Get_Fields.Item[1].Value;

Michaela_ 12. Sep 2005 09:44

Re: Text-Daten aus Excel exportieren
 
Danke shmia,

hab mir eine WideMemo Klasse geschrieben, damit gehts. Aber ich werds auch mal mit dem Recordset versuchen...


Alle Zeitangaben in WEZ +1. Es ist jetzt 02:41 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz