Beiträge: 2
Themen: 1
Danke erhalten: 0 in 0 Posts
Danke gesagt: 0
Registriert seit: 13.01.2014
Hallo
Kann mir jemand bei einem Seriendruck-Problem helfen. Wenn ich folgende Angaben auf der gleichen Zeile mache ...
Anrede / Vorname / Nachnahme
... jedoch in der Datenbank bei manchen Adressen keine Anrede oder kein Vorname angegeben ist, ensteht beim Zusammenführen ein Leerschlag und mit dem Leerschlag zwischen Anrede und Vorname werden es dann 2 Leerschläge. Wie kann ich Corel dazu bewegen, wenn ein Feld ohne Angaben ist, dass dieses Ignoriert wird und die folgenden Felder aufrücken, so dass keine Leerschläge entstehen?
Hoffe ich habe es verständlich formuliert ...
Gruss Reto
•
Beiträge: 182
Themen: 5
Danke erhalten: 34 in 33 Posts
Danke gesagt: 0
Registriert seit: 04.09.2011
Die folgende Idee funktioniert evtl. nur, wenn es nicht grade Hunderte von Anschreiben sind. Ich weiß leider nicht, ab wie vielen Seiten Corel in die Knie geht.
*********************************************
Corel DRAW X6
Benutze statt des Druckbefehls den Befehl "Mit neuem Dokument zusammenführen"
Dann erstellt CorelDRAW eine neue Datei mit so vielen Seiten wie es Empfänger in der Datenbank sind.
Rufe danach Bearbeiten > Suchen und Ersetzen > Text ersetzen auf.
Eintrag bei "Suchen": <Leertaste><Leertaste>
Eintrag bei "Ersetzen": nichts! Eingabezeile einfach leer lassen!
Dann auf "Weitersuchen" klicken und auf "Alle ersetzen".
Corel entfernt auf allen Seiten das zweite Leerzeichen, das erste Leerzeichen bleibt erhalten.
MfG
miss_marple
PS. Es ist nützlich, bei Anfragen immer die verwendete Corel-Version anzugeben, die kann unter Umständen eine beträchtliche Rolle spielen.
•
Beiträge: 2
Themen: 1
Danke erhalten: 0 in 0 Posts
Danke gesagt: 0
Registriert seit: 13.01.2014
Danke ... für die Antwort. Habe ich Versucht ... zum Teil auch mit Erfolg. Was noch fehlt, dass Corel jetzt auch noch gleich merken würde, dass keine Anrede vorhanden ist und dann gleich mit dem Namen beginnen würde ... Aber ich glaube Corel ist nicht das richtige Programm für solche, eher komplexe, Personalisierungen.
Ach ja ... wir benutzen Corel X6 ...
•
Beiträge: 4.895
Themen: 198
Danke erhalten: 305 in 283 Posts
Danke gesagt: 65
Registriert seit: 14.12.2011
14.01.2014, 13:11
(Dieser Beitrag wurde zuletzt bearbeitet: 15.01.2014, 10:03 von norre.)
Hallo,
eine Möglichkeit um das hinzubekommen, also dass wenn ein Feld fehlt das Nächste aufrückt.
Du musst das über einen Mengentextrahmen machen.
Du ziehst einen Mengentextrahmen auf, setzt deinen Curser und fügst deine Platzhalter über die Menüleiste Seriendruck dort ein.
Dein Textrahmen sollte linksbündig formatiert sein
Den Textrahmen horizontal groß genug aufziehen.
Du hast zwar, wenn die Anrede oder der Vornahme fehlt wieder diesen lästigen Doppelleerschritt den du allerdings, wie von miss marple beschrieben, mit Text ersetzen entfernen könntest.
Geändert
•
Beiträge: 3.252
Themen: 228
Danke erhalten: 1 in 1 Posts
Danke gesagt: 0
Registriert seit: 12.11.2003
xline schrieb:Hallo
Kann mir jemand bei einem Seriendruck-Problem helfen. Wenn ich folgende Angaben auf der gleichen Zeile mache ...
Anrede / Vorname / Nachnahme
... jedoch in der Datenbank bei manchen Adressen keine Anrede oder kein Vorname angegeben ist, ensteht beim Zusammenführen ein Leerschlag und mit dem Leerschlag zwischen Anrede und Vorname werden es dann 2 Leerschläge. Wie kann ich Corel dazu bewegen, wenn ein Feld ohne Angaben ist, dass dieses Ignoriert wird und die folgenden Felder aufrücken, so dass keine Leerschläge entstehen?
Hoffe ich habe es verständlich formuliert ...
Gruss Reto
...
kannst Du denn die Datenquelle bearbeiten? Hier würde sich ja m.E. nach ein Zusammenführen von Anrede, Vor und Zuname anbieten. Dann hättest Du im Platzhalter Name halt alle 3 Werte und keine Leerstellen wenn nichts da ist.
Cu Helmut
•
Beiträge: 182
Themen: 5
Danke erhalten: 34 in 33 Posts
Danke gesagt: 0
Registriert seit: 04.09.2011
xline schrieb:Was noch fehlt, dass Corel jetzt auch noch gleich merken würde, dass keine Anrede vorhanden ist und dann gleich mit dem Namen beginnen würde ... Aber ich glaube Corel ist nicht das richtige Programm für solche, eher komplexe, Personalisierungen. Ein schwacher Trost: Word kann es auch nicht besser, und das ist eigentlich so eine Art Standard für Serienbriefe.
MfG
miss_marple
•
Beiträge: 4.895
Themen: 198
Danke erhalten: 305 in 283 Posts
Danke gesagt: 65
Registriert seit: 14.12.2011
15.01.2014, 09:54
(Dieser Beitrag wurde zuletzt bearbeitet: 15.01.2014, 09:58 von norre.)
miss_marple schrieb:Ein schwacher Trost: Word kann es auch nicht besser, und das ist eigentlich so eine Art Standard für Serienbriefe. Hallo
das mit dem Aufrücken bei fehlender Anrede oder Vornamen funktioniert doch, siehe Beitrag#4 :nikowink2:
übrigens auch Word rückt bei einer fehlenden Anrede dann den Namen rüber ;-)
•
Beiträge: 182
Themen: 5
Danke erhalten: 34 in 33 Posts
Danke gesagt: 0
Registriert seit: 04.09.2011
norre schrieb:Hallo
das mit dem Aufrücken bei fehlender Anrede oder Vornamen funktioniert doch, siehe Beitrag#4
übrigens auch Word rückt bei einer fehlenden Anrede dann den Namen rüber
Du hast natürlich recht und ich habe den Beitrag #4 irgendwie falsch verstanden.
Aber aufrücken tun die Namen auch bei Grafiktext, es ist also egal, ob Grafik- oder Mengentext.
Und Word lässt eben auch die doppelten Leerzeichen stehen, nur das Ersetzen geht da ein bisschen intuitiver.
MfG
miss_marple
•
Beiträge: 4.895
Themen: 198
Danke erhalten: 305 in 283 Posts
Danke gesagt: 65
Registriert seit: 14.12.2011
15.01.2014, 11:40
(Dieser Beitrag wurde zuletzt bearbeitet: 15.01.2014, 12:02 von norre.)
Hallo,
das Problem mit den zusätzlichen Leerschritten könnte man vielleicht mit diesem Macro lösen,
Dem Macro einfach eine Taste zuweisen und alle doppelten Leerschritte werden in allen geöffneten Dokumenten gelöscht.
(Sollte die Ersetzung nur im aktuellen Dokument erfolgen, müsste sich vielleicht Koter den Code mal ansehen)
Code: Sub ZweiLeerzeichenimDokumtersetzen()
Const txtFIND As String = " " 'Dies soll ersetzt werden
Const txtREPLACE As String = "" 'mit diesem ersetzen
Dim d As Document
Dim p As Page
For Each d In Documents 'Loop all the open documents
For Each p In d.Pages 'Loop each page
p.TextReplace txtFIND, txtREPLACE, True, False
Next p
Next d
End Sub
Der Originalcode stammt von Shelbym
•
Beiträge: 1.437
Themen: 11
Danke erhalten: 273 in 232 Posts
Danke gesagt: 26
Registriert seit: 24.03.2012
Hallo,
miss_marple schrieb:Und Word lässt eben auch die doppelten Leerzeichen stehen, nur das Ersetzen geht da ein bisschen intuitiver.
In Word kann man Bedingungsfelder erstellen. Wenn man dies wie folgt ausführt, werden nur Leerzeichen eingefügt wenn das vorherige Seriendruckfeld nicht leer ist. Dann muss nach dem Seriendruck nichts mehr ersetzt werden.
Code: { MERGEFIELD "Anrede" }
{ IF { MERGEFIELD Anrede } = "" "" " " }
{ MERGEFIELD "Vorname" }
{ IF{ MERGEFIELD "Vorname" } = "" "" " "}
{ MERGEFIELD "Nachname" }
Die Zeilenumrüche habe ich nur zur besseren Übersicht eingefügt. Sie sind im Word-Dokument wegzulassen.
norre schrieb:...(Sollte die Ersetzung nur im aktuellen Dokument erfolgen, müsste sich vielleicht Koter den Code mal ansehen)
Das ginge so:
Code: Sub ZweiLeerzeichenImAktivenDokumtErsetzen()
Const txtFIND As String = " " 'Dies soll ersetzt werden
Const txtREPLACE As String = "" 'mit diesem ersetzen
Dim p As Page
For Each p In ActiveDocument.Pages 'Loop each page
p.TextReplace txtFIND, txtREPLACE, True, False
Next p
End Sub
Helmut schrieb:...
kannst Du denn die Datenquelle bearbeiten? Hier würde sich ja m.E. nach ein Zusammenführen von Anrede, Vor und Zuname anbieten. Dann hättest Du im Platzhalter Name halt alle 3 Werte und keine Leerstellen wenn nichts da ist.
Das wäre wohl die beste Möglichkeit. Wenn möglich, würde ich immer diesen Weg einschlagen.
Gruß
Koter
•
|