Ich würde darauf Tippen das 99% der Rechenzeit in den beiden Zeilen
Delphi-Quellcode:
help := Sheet.Cells[j,13].Value;
...
Sheet.Cells[j,13].Value := help;
da du einen
COM-Out-Of-Process-Server verwendest. Falls du auch noch über Frühe Bindung gehst (Sheet: OleVariant) kannst du jedliche andere Optimierung vergessen. Hier solltest du über GetRange/SetRange arbeiten um den ganzen Block als Variant Array in deinen Adressraum holen. Leider kann ich dir keinen Sourcecode liefern da ich dies auch nur von einer Kaufkomponente habe. Alternativ könntest du native Excel-Format wie Flexel kaufen welche Exceldateien native laden können.
Windows Vista - Eine neue Erfahrung in Fehlern.