Schon mal so probiert?

Code:
procedure TForm1.Button2Click(Sender: TObject);
var
zeile:string;
anz, i:integer;
begin
anz := lv1.Items.Count;
for i := 0 to anz do
begin
zeile := lv1.items[i].Caption +' : '+lv1.items[i].SubItems[0]+ ' : '+lv1.items[i].SubItems[1]+' : '+lv1.items[i].SubItems[2];
memo1.lines.add(Zeile);
end;
 if SD.execute then
  memo1.lines.SaveToFile(sd.filename);
end;