Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Serienbrief als PDF speichern

Serienbrief als PDF speichern
31.08.2015 10:10:45
Meike
Hallo Zusammen,
ich bin gerade dabei einen Serienbrief für ausgewählte Personen (mit "x" gekennzeichnet) als PDF zu speichern.
Nun habe ich einen Code "Serienbrief erstellen" mit dem Code "PDF erzeugen" verbunden und es funktioniert - aber leider noch nicht ganz so, wie ich es mir wünsche.
1. Problem: Ich möchte nur einmal die Aufforderung haben, den Speicherort auszuwählen und dort alle Urkunden als PDF speichern. Momentan wird für jede Urkunde der Speicherplatz abgefragt.
2. Problem: Aus mir unerklärlichen Gründen, werden manche Namen doppelt oder dreifach abgespeichert und der letzte Name der ausgewählt wurde wird, auch wenn er abgewählt wurde, beim zweiten Druck mitberücksichtigt. Ich möchte nur die ausgewählten Namen nur einmal abspeichern.
Damit ihr euch ein besseres Bild machen könnt, habe ich meine Beispieldatei hochgeladen.
https://www.herber.de/bbs/user/99910.xlsm
Kann mir jemand von euch weiterhelfen?
Vorneweg vielen lieben Dank für eure Unterstützung.
Liebe Grüße
Meike

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Serienbrief als PDF speichern
01.09.2015 19:58:56
Michael
Hallo Meike,
versuch's mal damit:
Option Explicit
Public Sub Seriendruck()
Dim Name$, Vorname$, Geschlecht$
Dim a&
Dim Anzeigen As Boolean, erstes As Boolean
Dim Pfad As String, Datei As String, varDatei
Anzeigen = False
Pfad = ThisWorkbook.Path & "\"
erstes = True
For a = 1 To Sheets("Eingabe").Cells(4, 5).End(xlDown).Row
If CStr(Sheets("Eingabe").Cells(a, 2)) = "x" Then
Geschlecht = Sheets("Eingabe").Cells(a, 6)
Name = Sheets("Eingabe").Cells(a, 5)
Vorname = Sheets("Eingabe").Cells(a, 4)
If erstes Then
Datei = Name & "_" & Vorname
varDatei = Application.GetSaveAsFilename(InitialFileName:=Pfad & Datei, _
FileFilter:="PDF (*.pdf),*.pdf", _
Title:="Bitte Ordner\Dateiname der PDF-Datei auswählen/eingeben")
If varDatei = False Then Exit Sub
erstes = False
Else
varDatei = Left(varDatei, InStrRev(varDatei, "\")) _
& Name & "_" & Vorname
'   Stop
End If
If Geschlecht = "m" Then
Sheets("form").Cells(9, 3).Value = "Sehr geehrter Herr " & Name
Else
Sheets("form").Cells(9, 3).Value = "Sehr geehrte Frau " & Name
End If
Sheets("form").ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=varDatei, _
OpenAfterPublish:=Anzeigen, _
Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas:=False
End If
Next a
End Sub
Die verbundenen Zellen in forms: C9:D9 habe ich "entbunden".
Schöne Grüße,
Michael

Anzeige
AW: Serienbrief als PDF speichern
02.09.2015 09:59:46
Meike
Danke Michael !
Es funktioniert einwandfrei!

freut mich, danke für die Rückmeldung owT
02.09.2015 13:54:19
Michael
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige