Thema: Excel mit ADO

Einzelnen Beitrag anzeigen

jangbu

Registriert seit: 6. Apr 2006
171 Beiträge
 
Delphi 10.3 Rio
 
#1

Excel mit ADO

  Alt 5. Mär 2013, 18:56
Datenbank: MSSQL • Version: 2000 • Zugriff über: ADO
Hallo,

lese via ADO auf Excel-Daten aus. So weit so gut. Wenn in einer ExcelZelle > 256 Zeichen stehen, gibt das Dataset.Field (da string) ab dem 256. Zeilen '?' aus. Feldtyp AsAnsiString gibt es nicht. Gibt es eine Möglichkeit doch Felder >256 Zeichen korrekt einzulesen?


[DELPHI]
procedure TFRM_AM_Administration.ExcelExportClick(Sender: TObject);
Var ExcelConnection : TADOConnection;
Dataset : TADODataset;
i : integer;
ADOQuery : TADOQuery;
begin
ExcelConnection := TADOConnection.Create(nil);
DataSet := TADODataSet.Create(nil);

ExcelConnection.ConnectionString := 'Provider=Microsoft.Jet.OLEDB.4.0;'
+ 'Data Source=U:\test.xls;'
+ 'Mode=ReadWrite;'
+ 'Extended Properties="Excel 8.0;HDR=Yes";'
// + 'LoginPrompt=FALSE;'
+ 'Persist Security Info=False';

DataSet.Connection := ExcelConnection;

DataSet.CommandText := 'SELECT * FROM [Sheet1$]';
DataSet.Open;
DataSet.First;

while (DataSet.Eof = false) do
begin
showmessage(DataSet.Fields[0].Text);
showmessage(DataSet.FieldByName('ColumThree').AsSt ring);

DataSet.Next;
end;
DataSet.Close;
/DELPHI]
  Mit Zitat antworten Zitat