Naja, ein Zeichen besteht eben aus Bytes (als Textzeichen wird es als char bezeichnet). Du hast also Bytes mit verschiedenen Werten, die Du übergibst. Der Befehl ord(char) gibt Dir den Wert des Zeichens zurück. Du kannst Dir also mit
Delphi-Quellcode:
var s : string;
begin
s := RichEdit1.Lines.Text;
for i := 1 to length(s) do
begin
RichEdit2.Lines.Add(ord(s[i]));
end;
erstmal alle Zeichenwerte anzeigen lassen und dann Zeichen, die nicht korrekt an Excel übergeben werden, herausfinden.
Ist ein bißchen Handarbeit, irgendwann wirst Du die nicht übertragbaren Zeichen kennen und kannst sie dann herausfiltern mit
Delphi-Quellcode:
for i := 1 to length(RichEdit1.Lines.Text) do
begin
if ord(s[i]) = 128 then
s[i] := ' ';
end;
Vielleicht gibt es auch schon fertige Filterfunktionen in den Web-Applikationen oder in den Excel-Funktionen in Delphi, da habe ich aber keine Erfahrung.
Grüße, Messie