Seriendruck
#1
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
Zitieren
#2
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.
Zitieren
#3
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 Smile ... Aber ich glaube Corel ist nicht das richtige Programm für solche, eher komplexe, Personalisierungen.

Ach ja ... wir benutzen Corel X6 ...
Zitieren
#4
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.

[Bild: gftw8qxinv8.jpg]
Geändert
Zitieren
#5
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
Zitieren
#6
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 Smile ... 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
Zitieren
#7
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 ;-)
Zitieren
#8
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
Zitieren
#9
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
Zitieren
#10
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
Zitieren



Möglicherweise verwandte Themen...
Thema Verfasser Antworten Ansichten Letzter Beitrag
  Seriendruck > Textfelder gleiche Breite / unterschiedliche Schriftgröße Stephan81 5 154 10.11.2020, 22:12
Letzter Beitrag: koter
  v2017: QR-Code nicht via Seriendruck erzeugbar, oder? mtemp 7 977 02.08.2017, 01:28
Letzter Beitrag: mtemp
  Seriendruck mit variablen Fotos Francis 2 685 22.04.2017, 15:30
Letzter Beitrag: Unkraut
  Seriendruck - Umlaute werden zu Hieroglyphen bruno66 11 2.175 12.01.2016, 11:28
Letzter Beitrag: Unkraut
  Seriendruck Visitenkarten inkl. QR-Code / CorelDRAW X5 fanders 3 1.385 15.07.2015, 07:08
Letzter Beitrag: norre
  Excel => Seriendruck im Corel Karutahi 2 1.715 04.11.2011, 13:23
Letzter Beitrag: Karutahi
  Formatierungs Fehler in Seriendruck X4 Thea1966 1 698 06.09.2011, 08:14
Letzter Beitrag: Suc
  variable Bilder im Seriendruck x3 wunderkinnd 1 2.362 18.03.2011, 17:11
Letzter Beitrag: Unkraut
  Seriendruck AKley 4 1.261 20.01.2008, 15:53
Letzter Beitrag: AKley
  SerienDruck problemchen. Smoo 7 1.191 03.12.2007, 08:37
Letzter Beitrag: fritzbuser