Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Texttrennzeichen Delphi Word (https://www.delphipraxis.net/88902-texttrennzeichen-delphi-word.html)

Christoph Frank 22. Mär 2007 18:03


Texttrennzeichen Delphi Word
 
Hallo zusammen,

mal wieder ein neues Problem:
Aus meinem Programm sende ich an Word z.B. folgenden Datenstrom, der in einen Serienbrief gemergt wird.
Text1;Text2;Text3;Text4;Text5; >> entsp. den Variablen des Serienbriefes
Heute;bleibt;die;Küche;kalt; >> ist der zu übergebende Text

so wie ich es oben gemacht habe, klappt es wunderbar.
Num habe ich aber den Text:
EMail;Telefon;Fax; >> entsp. den Variablen des Serienbriefes
Anton-Heinrich@Katastrophe.de;01755 / 171829;01755 / 171830; >> ist der zu übergebende Text

und jetzt passiert's:
Im Word erhalte ich nun folgendes Fenster: :stupid:
'Trennzeichen im Steuersatz'
Datenfelder müssen durch sogenannte Feldtrennzeichen voneinander getrennt werden usw.

Nun müßte der Anwender angeben, welches Trennzeichen ich gewählt habe, das weiß der doch garnicht!!! :stupid:
Meine Frage:
Wie kann ich aus meinenm Programm dem Steuersatz mein gewähltes Trennzeichen schon mitgeben, damit dieses Fenster in Word garnicht erscheint?
Ich habe schon versucht das Problem als Makro zu bekommen, ist mir nicht gelungen.

Gruß Christoph

Christoph Frank 23. Mär 2007 10:22

Re: Texttrennzeichen Delphi Word
 
Hallo zusammen,

man muß nur einmal eine Nacht darüber schlafen und schn löst sich alles wie von selbst. Es handelt sich hier natürlich nicht um Delphi sondern ausschließlich um Word, aber trotzdem hier die Lösung:

In meinem Beispiel

Text1;Text2;Text3;Text4;Text5; >> entsp. den Variablen des Serienbriefes
Heute;bleibt;die;Küche;kalt; >> ist der zu übergebende Text

muß dem Steuersatz, also dem ersten Satz der die Variablen enthält in () so viele Trennzeichen vorangestellt werden, wie im Steuerstz vorhanden sind, also

(;;;;;)Text1;Text2;Text3;Text4;Text5; >> entsp. den Variablen des Serienbriefes
Heute;bleibt;die;Küche;kalt; >> ist der zu übergebende Text.

und schon ist das Problem behoben.

Gruß Christoph

waldforest 20. Jun 2010 10:50

AW: Texttrennzeichen Delphi Word
 
Hallo,ich stehe vor genau diesem beschriebenen Problem.
Der aufgezeigte Lösungsweg funktioniert bei mir nicht. Beim Verbinden der Tatenquelle mit dem Serienbriefdokument erscheint immer die Abfrage nach dem Feldtrennzeichen. Dies möchte ich umgehen, damit auch ein unerfahrender User ohne weiteres einen Brief aus meiner Delphianwendung mit Word erstellen kann.
Ich nutze standardmäßig ; als Feldtrennzeichen

Kann man über OLE das Feldtrennzeichen in Word setzten, wenn ja wie ?
Gerne nehme ich auch alternative Vorschläge an.

Keldorn 20. Jun 2010 11:12

AW: Texttrennzeichen Delphi Word
 
Hallo,

bekommst du nur den Dialog mit der "Trennzeichen im Steuersatz" oder noch eine weitere Fehlermeldung vorher? Evlt kannst Du deine Datenquelle und Worddoc auch mal anhängen, sieht man mehr.

Ich persönlich würde kein Semikolon nehmen, ich würde tab bevorzugen. Semikolons und Kommas als Trennzeichen können auch im normalen Text vorkommen und zerschießen Dir die Datenquelle. Vielleicht zerschießen dir auch andere Zeichen deine Datenquelle, z.B. vielleicht hast in einem Feld auch ein einzelnes ", das geht auch nicht.
Du mußt halt immer sicherstellen, daß Du in jeder Zeile deiner Datenquelle immer die gleiche Anzahl von Feldtrennzeichen hast.

Gruß Frank

idefix2 20. Jun 2010 20:04

AW: Texttrennzeichen Delphi Word
 
Ja, ich würde es auch mit tab (#9) versuchen, das sollte Word eigentlich automatisch erkennen.

Wobei ich Word zwar durchaus auch für Serienbriefe verwende, aber ohne die Word Serienbrieffunktion, sondern mit Hilfe von Textmarken statt Seriendruckfeldern, die ich von Delphi aus ansteuere und dort die variablen Werte selbst hinschreibe. Irgendwie finde ich diesen Zugang einfacher und direkter, vor allem für den unbedarften Anwender.

Keldorn 20. Jun 2010 20:45

AW: Texttrennzeichen Delphi Word
 
Zitat:

Zitat von idefix2 (Beitrag 1030443)
Wobei ich Word zwar durchaus auch für Serienbriefe verwende, aber ohne die Word Serienbrieffunktion, sondern mit Hilfe von Textmarken statt Seriendruckfeldern, die ich von Delphi aus ansteuere und dort die variablen Werte selbst hinschreibe. Irgendwie finde ich diesen Zugang einfacher und direkter, vor allem für den unbedarften Anwender.

Würde da immer den Serienbrief bevorzugen. Ich persönlich finde das Einfügen via symbolleistenauswahl "Seriendruckfeld einfügen" wesentlich komfortabler und auch sicherer für den Anwender als das Anlegen von Textmarken (Vertippen etc.).
Kommt sicher auch auf das Dokument an, bei mehreren Datensätzen oder mehrfaches Verwenden vom gleichen Feld innerhalb des Dokumentes kommt ja nur der Serienbrief in Frage.

Gruß Frank

waldforest 21. Jun 2010 06:04

AW: Texttrennzeichen Delphi Word
 
Hallo,
danke für die Tipps,
ich habe meinen Fehler gefunden. Meine erstellte CSV-Datei hatte nach dem letzten Feld kein semikolon. Nachdem ich dies korrigiert hattekam keine Abfrage mehr.


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:14 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