Wie wär's mit dem Property
Sorted?
Listbox.Sorted auf
True setzen könnte eventuell ganz nützlich sein

Prinzipiell ja, da aber Zahlen als Strings gespeichert werden, wird das keine numerische Sortierung werden.
Das sieht dann eher so aus:
Der Teil müsste dann verändert werden:
Delphi-Quellcode:
for i:=1 to length(s) do
begin
x:=ord(s[i]);
begin
If (x>=65) and (x<=90) Then listbox1.items.Add(s[i]);
end;
end;