Zitat:
Memo1.Lines[i-1]
Man hat Glück, bei einem TMemoStrings (TMemo.Lines) gibt es keinen Index-Fehler ... da kommt einfach nur ein leerer String '' raus.
Bei z.B. einer TStringList dagegen, dort knallt es wunderbar.
In so 'nem Fall macht man halt statt
for i := Memo1.Lines.Count - 1 downto 0 do
besser
for i := Memo1.Lines.Count - 1 downto 1 do