Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Seriendruck in Excel mittels Makro?
#1
Hallo Forum,

eine Freundin von mir erstellt für Festivals unzählige Arbeitsverträge für kurzfristige Beschäftigungen - allein da gibt es 4 verschiedene Dokumente für mehr als 100 Mitarbeiter.
Ich habe bereits ein paar Erleichterungen gebaut und übernehme die Personaldaten mittels PQ-Abfrage in Excel, damit daraus später ein Serienbrief erzeugt werden kann.

In Word ist dann wiederum ein Makro, damit für jedes Dokument eine PDF aus (Dateiname = Name, Vorname, Festival und Startdatum) erzeugt wird.

Ist euch ein Makro bekannt oder wie aufwändig wäre es, wenn man so ein Tool nur in einer Excel Datei bauen würde? Also alle 4 Dokumente in Excel und nach der Serienbrief Methode für jeden Empfänger einzeln die Formulare als PDF speichert?

Oder macht das keinen Sinn?

Danke für eure Ideen vorab Smile
Antworten Top
#2
Hallo,

also ich würde das schon in Word lassen, ist dort einfacher zu gestalten.
Einfach als Serienbrief herrichten.

Danach kannst Du z.B. mit folgendem Word Makro jeden Datensatz Seperat als PDF Speichern.
(Im Beispielcode wird der Name des PDFs aus Feld 1 und Feld 2 im Serienbrief zusammengesetzt - das musst Du halt entsprechend anpassen)

Code:
Sub Makro1()

    pfad = ActiveDocument.Path
    DName = ActiveDocument.Name

    merk_ViewMail = ActiveDocument.MailMerge.ViewMailMergeFieldCodes
    ActiveDocument.MailMerge.ViewMailMergeFieldCodes = 0
   
    ActiveDocument.MailMerge.DataSource.ActiveRecord = wdLastRecord
   
    anzahl = ActiveDocument.MailMerge.DataSource.ActiveRecord
   
    ActiveDocument.MailMerge.DataSource.ActiveRecord = wdFirstRecord

    For i = 1 To anzahl
        ActiveDocument.MailMerge.DataSource.ActiveRecord = i
       
        'Speicherzusatz auslesen
        dat1 = ActiveDocument.MailMerge.DataSource.DataFields(1)
        dat2 = ActiveDocument.MailMerge.DataSource.DataFields(2)
        '....
        Zusatz = dat1 & "_" & dat2
        DName = "Serienbrief"

        'Als PDF Speichern
        ActiveDocument.ExportAsFixedFormat OutputFileName:=pfad & "/" & DName & "_" & Zusatz & ".pdf" _
        , ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False
    Next

    ActiveDocument.MailMerge.ViewMailMergeFieldCodes = merk_ViewMail
End Sub

LG
Norbert
Antworten Top
#3
Hallo Norbert,
ein Makro für Word habe ich, das klappt auch ganz gut - danke trotzdem Smile.

Dachte nur, dass man 4 Dokumente ggf. einfacher in Excel Blätter erfassen oder eine Userform dafür bauen könnte.
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste