Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   OLE, Word, Doc-Inhalt in Doc schreiben (https://www.delphipraxis.net/153166-ole-word-doc-inhalt-doc-schreiben.html)

hoika 23. Jul 2010 11:13

OLE, Word, Doc-Inhalt in Doc schreiben
 
Hallo #,

ich habe eine Word-Datei base.doc und eine Langtext.doc.
Die enthält Text-Elemente in der Art.

--Doc-Start--

Sehr <Anrede1> <Anrede2>,

blaaaaa

<Langtext>

--Doc-Ende--

Die Felder mit <> werden vor dem Drucken ersetzt, klar ;)

<Anrede1> <Anrede2> sind dabei normaler Text (String)
<Langtext> allerdings soll ebenfals eine Doc-Datei sein,
mit eigenen Formatierungen usw.

Mit dem Befehl Selection.InsertFile bekomme ich per OLE den Inhalt der Langtext.Doc an die Stelle von <Langtext>.
Wie kann ich die "Cursor" an die Stelle bringen ?
Und funktioniert das auch in Office 2000 (habe hier nur Office 2007) ?


Danke


Heiko

idefix2 23. Jul 2010 12:28

AW: OLE, Word, Doc-Inhalt in Doc schreiben
 
Wo befindet sich denn der Cursor jetzt nach dem Einfügen, und wo genau willst Du ihn haben (am anfang des eingefügten Textes, am Ende, sonstwo)?

Mschmidt 23. Jul 2010 14:58

AW: OLE, Word, Doc-Inhalt in Doc schreiben
 
Mit Cursor den Text rauf&Runter zu gehen halt ich für fehlerhaft. Verwende doch Formular-Felder - die sind nativ
ansprechbar.
:-mschmidt

ähmmm, ich glaub ich habs falsch verstanden. vergiss meinen kommentar...

hoika 23. Jul 2010 15:00

AW: OLE, Word, Doc-Inhalt in Doc schreiben
 
Hallo,

das Format ist vorgegeben ... ;(


Heiko

shmia 23. Jul 2010 15:18

AW: OLE, Word, Doc-Inhalt in Doc schreiben
 
Ungetestet; könnte aber funktionieren:
Delphi-Quellcode:
Selection.Find.ClearFormatting;
Selection.Find.Text := '<langtext>';
(*
ggf. noch weitere Properties einstellen
        .Replacement.Text = ""
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
*)
if Selection.Find.Execute then
  Selection.InsertFile(....

hoika 23. Jul 2010 16:25

AW: OLE, Word, Doc-Inhalt in Doc schreiben
 
Danke,

ich probier es aus.
Aber erst am Montag, weil ... Weekend !!!!!


Heiko

p80286 23. Jul 2010 16:27

AW: OLE, Word, Doc-Inhalt in Doc schreiben
 
Hallo Heiko,

der weg von shmia sollte funktionieren, aber ob das in Word200x überall gleich funktioniert??????

Wie wäre es denn wenn Du statt <Anrede> eine Textmarke nutzt, das geht meistens sehr gut.
Und statt <Langtext> verwendest Du diese Word-Feld-Funktion (Dateiladen ?)

Was die Formatierungen (in der Langtext.doc) angeht, traue ich Word nicht über den Weg. Da ist "what you see" noch längst nicht "what you get".

Ich bevorzuge Datenübergabe mit Textmarken und die Formatierunen direkt im Word-doc.

Gruß
K-H


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:49 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz