Hallo hoika,
Du musst versuchen die Procedure dahin zu überarbeiten das nur einmal die Zelle in Excel gelesen wird, weil das die meiste Zeit verbraucht. Am besten einmal auslesen und dann den Wert in StringGrid reinsetzen (oder auch nicht). So wie es jetzt ist, liest Du den Wert 2-mal aus. Als weiteres ist der Range-Befehl beim Auslesen einzelner Zelle langsamer als der Cells- Befehl.
Zitat:
Wie man sieht, alde ich jede Zelle einzeln das ExcelWorksheet0.Range
könnte mir doch aber die komplette Spalte zurückgeben,
was hat Value aber dann für einen Typ (ValueList ?),
und wie greife ich darauf zu ?
Value ist OleVariant.
Du muss Dir dann einen Array aus Variant mit Create erstellen.
Delphi-Quellcode:
Var
oArray: OleVariant;
begin
oArray:= VarArrayCreate([Zeile,Spalte]),varVariant);
oArray := Range [‘A1’,’A10’].Value;
ich habe das jetzt nicht getestet, aber so in etwa müsste das Aussehen.
Bis bald Chemiker
wer gesund ist hat 1000 wünsche wer krank ist nur einen.