![]() |
Zeilenumbruch in MS Word (Formularfeld)
Hallo,
möchte gerne in MS word in ein Formularfeld einen Text hineinbringen. Soweit kein Problem. Text kommt auch an. Nur leider werden in dem Formularfeld keine Zeilenumbrüche dargestellt sondern der Text fortlaufend dargestellt, also hintereinander.
Delphi-Quellcode:
Jemand eine Idee wie ich dem Formularfeld den Zeilenumbruch erzwingen kann?
var
Filename, vOle, Field: OleVariant; S: String; I: Integer; begin FileName := ExtractFilePath(ParamStr(0)) + 'Dokument.doc'; Self.WordApplication1.Connect; Self.WordApplication1.Visible := True; Self.WordApplication1.Documents.Open(FileName, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam, EmptyParam); vOle := 1; Field := 'input'; for I := 1 to 10 do S := S + IntToStr(I) + #13#10; // Self.WordApplication1.Documents.Item(vOle).FormFields.Item(Field).Result := WideString(S); Self.WordApplication1.Documents.Item(vOle).FormFields.Item(Field). := S; Self.WordDocument1.Close; Self.WordApplication1.Disconnect; end; Ersatzweise würde ich auch dynamisch ein neues Feld einfügen. Es muss sich dann aber in der Folgezeile positionieren. Hab aber keine Idee. |
Re: Zeilenumbruch in MS Word (Formularfeld)
Probier mal statt #13#10 entweder mal nur #13 oder nur #10
|
Re: Zeilenumbruch in MS Word (Formularfeld)
Hab ich schon.
Mein Verdacht geht dahin, das Word mit Unicode arbeitet ich aber Asci. |
Re: Zeilenumbruch in MS Word (Formularfeld)
Zitat:
|
Re: Zeilenumbruch in MS Word (Formularfeld)
Dann ersetzte doch deinen Typ (z.B. mit OleVariant oder WideString)
|
Re: Zeilenumbruch in MS Word (Formularfeld)
Da könntest Du recht haben.
Delphi-Quellcode:
Bringt nämlich auch nicht den gewünschten Erfolg.
S := S + IntToStr(I) + Chr($0000D); // #13#10;
Word erzeugt jetzte eine 13. @mkinzler:
Delphi-Quellcode:
Bringt auch nicht den gewünschten Erfolg :(
S: oleVariant;
S: WideString; |
Re: Zeilenumbruch in MS Word (Formularfeld) [gelöst]
Hab das Problem an der Tablle ausgemacht in der das Feld lag. In einem leeren Dokument mit nur einem Formularfeld kommt der Umbruch.
Da es nicht ohne Tabelle geht nehm ich jetzt die ekRTF-Komponente. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz