Crea un StringList ordenado. Pasa los datos de Memo.Lines al StringList con:
Código Delphi
[-]
ST.AddStrings(Memo1.Lines);
Y vuelve a volcar esto sobre el memo. El StringList te las habrá ordenado correctamente.
Completo sería algo así:
Código Delphi
[-]
ST := TStringList.Create();
ST.Sorted := True;
ST.AddStrings(Memo1.Lines);
Memo1.Lines.Clear;
Memo1.Lines.AddStrings(ST.Strings);
ST.Free;