Thema: Delphi Excel Tabelle auslesen

Einzelnen Beitrag anzeigen

Benutzerbild von Nalincah
Nalincah

Registriert seit: 18. Jul 2003
898 Beiträge
 
Delphi 6 Professional
 
#19

Re: Excel Tabelle auslesen

  Alt 17. Dez 2003, 07:56
Ich hab das ganze auch mal ausprobiert. Wenn ich den Code hier ausführe:

Uses-Units:
Delphi-Quellcode:
uses
  Excel2000;
Globale Variable:
Delphi-Quellcode:
var
  FrmMain: TFrmMain;
  excel: TExcelApplication;
  wb: _WorkBook;
  ws: _WorkSheet;
  lcid: Integer;
Tabelle öffnen
Delphi-Quellcode:
procedure TFrmMain.Button1Click(Sender: TObject);
begin
  if OpenDialogExcel.Execute then
  begin
    // Excel öffnen
    lcid := GetUserDefaultLCID;

    excel := TExcelApplication.Create(FrmMain);
    excel.Connect;

    // Exceldatei laden
    wb := excel.Workbooks.Open(OpenDialogExcel.FileName, emptyParam, emptyParam, emptyParam, emptyParam,
                          emptyParam, emptyParam, emptyParam, emptyParam, emptyParam, emptyParam,
                          emptyParam, emptyParam, lcid);

    // erstes Worksheet auswählen
    ws := wb.Sheets[1] as _WorkSheet;
    OpenExcel(StringGridExcel);
  end;
end;
Tabelle auslesen
Delphi-Quellcode:
procedure OpenExcel(StringGrid:TStringGrid);
var
  x,y:Integer;
  maxCol,maxRow:Integer;
begin
  maxCol := ws.Columns.Count;
  maxRow := ws.Rows.Count;
  for x := 0 to maxCol - 1 do
  begin
    for y := 0 to maxRow - 1 do
    begin
      StringGrid.Cells[x,y] := ws.Cells.Item[x,y].Value; // <-- Hier kracht es beim ersten durchlauf!!
    end;
  end;
end;
krieg ich diese Meldung:

Code:
OLE-Fehler 800A03EC
Sebastian
Ehemals bekannt als General2004
  Mit Zitat antworten Zitat