Desarrolle este procedimiento, le pasas un String y un TStringList, porque me encontré con el mismo problema de los espacios que se menciona al inicio.
La idea que el StringList nos lo devuelva con varios item.
Código Delphi
[-]
procedure TForm2.ComasTexto(str: String; Lista: Tstringlist);
var
I: Integer;
cadena:String;
begin
Lista.Clear;
cadena:='';
for I := 1 to Length(str)+1 do
begin
if str[i] = ',' then
begin
lista.Add(cadena);
cadena:='';
end
else
begin
if str[i] =#0 then
lista.Add(cadena)
else
cadena:=cadena + str[i];
end;
end;
end;