ich habe folgendes Problem: ich importiere aus Excel eine Liste an Daten folgendermaßen:
1. lese jede Zeile ein und packe die Inhalte in eine StringList
2. die StringListe packe ich in eine TList
3. die TList will ich dann auslesen
dabei tritt dann bei fehler bei folgender zuweisung auf:
ExcelZeile := TStringList(Schilder.Items[0]);
Was mache ich falsch?
hier der Quelltext:
Code:
private
{ Private-Deklarationen }
ExcelZeile: TStringList;
Schilder: TList;
...
procedure TMainForm.ButtonExcelImportClick(Sender: TObject);
var
schildZeile: TLabel;
i: Integer;
begin
OpenDialog.Filter := 'Excel Tabelle(*.xls)|*.xls';
if OpenDialog.Execute then
begin
Schilder := TList.Create;
// Excelzeilen einlesen
ladeZeilen(OpenDialog.Filename);
ShowMessage(IntToStr(Schilder.Count) + ' Zeilen aus der Excel Tabelle eingelesen');
// die Zeilen des ersten Schildes anzeigen
ExcelZeile := TStringList(Schilder.Items[0]);
ShowMessage('Anzahl der Felder in der StringList:' + #13#10 +
IntToStr(ExcelZeile.Count));
for i:=0 to ExcelZeile.Count-1 do
begin
schildZeile := TLabel.Create(Gravurflaeche);
with schildZeile do
begin
Parent := Gravurflaeche;
Visible := true;
Left := 10;
Top := i*14 + 10;
Text := ExcelZeile.ValueFromIndex[i];
ShowMessage(ExcelZeile.ValueFromIndex[i]);
Name := 'Label' + IntToStr(i);
end;
end;
ExcelZeile.Free;
end;
end;