Ich greife hier mal folg. Abschnitt raus:
Delphi-Quellcode:
if LeseDatum(Liste[i]) <> '' then
begin
jahr := trennedatum(LeseDatum(Liste[i]))[0];
mon := trennedatum(LeseDatum(Liste[i]))[1];
tag := trennedatum(LeseDatum(Liste[i]))[2];
Das ist eine grosse Verschwendung, denn die Funktion LeseDatum() wird gleich 4 Mal aufgerufen!!
Warum verwendest du nicht einfach eine lokale (string-)Variable um das Ergebnis von LeseDatum() zwischenzuspeichern?