Veröffentlicht Mon, 16 Oct 2023 17:53:10 GMT von Oliver Acker Property Manager
Hallo zusammen,

wir haben einen Workflow, der mittels eines arethmetischen Ausdrucks einen Zeilenbruch erzwingt. Hier ein Beispiel welches Einwandfrei funnktioniert:

"Zeile 1" & ( Chr(13) ) & "Zeile 2"

Nun benötigen wir einen arethmetischen Ausdruck, der genau das umgekehrte macht (die Absätze sollen gegen ein Leerzeichen ersetzt werden). Mit der Replacefunktion hat es leider nicht geklappt

Replace(GV_Bemerkungsfeldmehrzeilig, "( Chr(13) )", " ")

Folgender Code hat ebenfalls nicht funktioniert (Hochkomma weggelassen)

Replace(GV_Bemerkungsfeldmehrzeilig, ( Chr(13) ), " ")

Was machen wir falsch?

MfG O. Acker
Veröffentlicht Tue, 17 Oct 2023 11:44:51 GMT von Gerardo Lisanti Team Leader Product Management
Hallo Oliver,

du musst den zurückgegebenen Character mit CStr() in einen String konvertieren, bevor du ihn ersetzen kannst.
Der korrekte Ausdruck dafür ist: Replace(GV_Bemerkungsfeldmehrzeilig,CStr(Chr(13)), " ")

In meinen Tests musste ich allerdings LF, Line Feed - Chr(10) ersetzen, um den Zeilenumbruch zu entfernen.
Windows verwendet eigtl. die Kombination CR LF, also Carriage Return - Chr(13) und Line Feed - Chr(10) für den Zeilenumbruch...

Aus meiner Sicht solltest du sicherheitshalber beide Zeichen ersetzen:
Replace(Replace(GV_Bemerkungsfeldmehrzeilig,CStr(Chr(13))," "),CStr(Chr(10))," ")


Viele Grüße / With best regards,

Gerardo Lisanti
Team Leader Product Management  |  DocuWare GmbH
Veröffentlicht Tue, 17 Oct 2023 13:23:57 GMT von Oliver Acker Property Manager
Hallo Herr Lisanti,

super, das funktioniert einwandfrei (woher soll man sowas als "normalsterblicher" wissen :D

MfG

O. Acker

Sie müssen angemeldet sein um Beiträge in den Foren zu erstellen.