Thema: Delphi Iport einer Excel-Datei

Einzelnen Beitrag anzeigen

WoTo

Registriert seit: 28. Jun 2004
Ort: Rotenburg (Wümme)
102 Beiträge
 
Delphi 2005 Enterprise
 
#4

Re: Iport einer Excel-Datei

  Alt 24. Apr 2007, 12:43
Hallo zusammen,
habe mir eine kleine Funktion geschrieben, die mit Hilfe von ADO eine Exceltabelle einliest.

Für alle die es interessiert hier der Quellcode:

Delphi-Quellcode:
function TCreateIni.MakeConnection: TAdoTable;
var
  ADOTable : TADOTable;
begin
  ADOTable := TADOTable.Create(nil);
  try
    ADOTable.ConnectionString:= 'Provider=MSDASQL.1;' +
                                'Persist Security Info=False;' +
                                'Mode=ReadWrite;' +
                                'Extended Properties="DSN=Excel-Dateien;' +
                                'DBQ=' + FFileName + ';' +
                                'DriverId=790;' +
                                'MaxBufferSize=2048;' +
                                'PageTimeout=5;";';
    ADOTable.TableName := '[Sheet1$]';
    ADOTable.Active := true;
    Result := ADOTable;
  except
    on e:exception do
    begin
      ShowMessage(e.Message);
      FreeAndNil(ADOTable);
      Result := nil;
    end;
  end;
end;
Nachdem sich die ADOTable erfolgreich angebunden hat, kann man die Daten der Table weiterverarbeiten.
(ADOTable.FieldByName('SoSo').AsString)

Wichtig dabei ist, daß die 1. Zeile in der Exceldatei als Tabellenüberschrift in der ADOTable gilt.
Beispiel:

In Excel
Feld A1 : SoSo
Feld A2 : xyz

Im Quellcode:
Delphi-Quellcode:
var
  temp : string;
begin
  temp := ADOTable.FieldByName('SoSo').AsString;
end;
Die Variable Temp beinhaltet jetzt den String 'xyz'.

Viel Spaß noch,
Woto
  Mit Zitat antworten Zitat