Word Serienbriefe Makro?

Hallo mal wieder :)

ich habe eine neue Herausforderung für Euch und bin mir nicht sicher, ob das überhaupt funktioniert. Ich habe mit Word basierend auf einer Exceldatenbank Serienbriefe erstellt. Es sind knapp 180 Stück Mit folgendem Code habe ich es endlich geschafft, sie ohne PlugIn als PDF einzeln auf 1-Klick abzuspeichern.

Sub Serienbrief_im_PDF_Format_speichern()

Dim iBrief As Integer, sBrief As String
Dim AppShell As Object
Dim BrowseDir As Variant
Dim Path As String


On Error GoTo ErrorHandling


Set AppShell = CreateObject("Shell.Application")
Set BrowseDir = AppShell.BrowseForFolder(0, "Speicherort für Serienbriefe auswählen", 0, 16)
   If BrowseDir = "Desktop" Then
    Path = CreateObject("WScript.Shell").SpecialFolders("Desktop")
Else
    Path = BrowseDir.items().Item().Path
End If
   If Path = "" Then GoTo ErrorHandling
       Path = Path & "\Serienbrief-" & Format(Now, "dd.mm.yyyy-hh.mm.ss") & "\"
MkDir Path
   On Error GoTo ErrorHandling
          MsgBox "Serienbriefe werden exportiert. Dieser Vorganag kann einige Minuten dauern - Microsoft Word wird während dieser Zeit ausgeblendet", vbOKOnly + vbInformation
Application.Visible = False

With ActiveDocument.MailMerge
    .DataSource.ActiveRecord = 1
    Do
        .Destination = wdSendToNewDocument
        .SuppressBlankLines = True
        With .DataSource
            .FirstRecord = .ActiveRecord
            .LastRecord = .ActiveRecord
            sBrief = Path & .DataFields("ID").Value & ".pdf"
                    
        End With
             
              
        If .DataSource.DataFields("ID").Value > "" Then
            ActiveDocument.SaveAs FileName:=sBrief, FileFormat:=wdFormatPDF
                                End If
        ActiveDocument.Close False
               If .DataSource.ActiveRecord < .DataSource.RecordCount Then
            .DataSource.ActiveRecord = wdNextRecord
        Else
            Exit Do
        End If
    Loop
End With
  ErrorHandling:
Application.Visible = True
 If Err.Number = 76 Then
    MsgBox "Der ausgewählte Speicherort ist ungültig", vbOKOnly + vbCritical
ElseIf Err.Number = 5852 Then
    MsgBox "Das Dokument ist kein Serienbrief"
ElseIf Err.Number = 4198 Then
    MsgBox "Der ausgewählte Speicherort ist ungültig", vbOKOnly + vbCritical
ElseIf Err.Number = 91 Then
    MsgBox "Exportieren von Serienbriefen abgebrochen", vbOKOnly + vbExclamation
ElseIf Err.Number > 0 Then
    MsgBox "Unbekannter Fehler: " & Err.Number & " - Bitte Makro erneut ausführen.", vbOKOnly + vbCritical
Else
    MsgBox "Serienbriefe erfolgreich exportiert", vbOKOnly + vbInformation
End If

End Sub

Das klappt auch ganz gut. Frage kommt im Kommentar

Word, Serienbrief
1 Antwort
Excel verschachtelte WENN-Funktion zu lang?

Hallo, ich sitze gerade an einer Excel-Übungsaufgabe und bin mit meinen mir bekannten Möglichkeiten am Ende.

Es geht um eine Tabelle, die im Personalbereich für Serienbriefe genutzt werden soll. Relevant dafür sind die Spalten:

  • "Anrede" (Herr oder Frau),

  • "Abkürzung" (des Berufswunsches) !Eingabe über Dropdown-Liste!

Es gibt 10 Berufe, für die man sich bewerben kann, deswegen das mit den Abkürzungen, um bei der Eingabe Zeit zu sparen. Ich habe im Hintergrund (ab Spalte ZZZ oder so) schon eine "Hilfstabelle" erstellt, wo die Abkürzungen, daneben der Beruf ausgeschrieben steht und in der 3. Spalte die weibliche Form. Auf die Spalte ZZZ greift auch meine Einstellung zur Dropdown-Liste drauf zu (Daten->Datenüberprüfung->Zulassen:Liste).

Aufgabe: Neben die Spalte "Abkürzung" soll der Berufswunsch ausgeschrieben erscheinen mit Beachtung, ob sich ein Herr oder eine Dame bewirbt.

Beispiel:

Anrede | Abkürzung | Berufswunsch

Herr | IN | Informatiker

Frau | IN | Informatikerin

Da es 10 Berufe sind, und dann noch das Geschlecht beachtet werden muss, wird es eine riesengroße verschachtelte WENN-Funktion bei mir, mit der anschließenden Fehlermeldung, dass zu viele Zeichen verwendet wurden.

Meine Formel sieht so aus: =WENN(Abkürzung="IN";WENN(Anrede="Herr";"Informatiker";"Informatikerin);WENN(Abkürzung="FB";WENN(Anrede="Herr";"Flugbegleiter";"Flugbegleiterin");WENN......

Statt den ausführlichen Bezeichnungen habe ich natürlich Zellbezüge eingefügt. Dafür habe ich ja auch meine kleine Hilfstabelle angelegt ;-)

Ich hoffe, mir kann bitte jemand helfen. Mit UND-, VERGLEICH-, WAHL-Funktionen habe ich es leider nicht hinbekommen. Mit INDEX kam ich nicht klar.

Liebe Grüße und vielen Dank im Voraus!

Excel, Microsoft Office, Serienbrief, Funktion, verschachtelt, wenn-Funktion, wenn
2 Antworten
Serienmail: 1 Exceldatei, viele Empfänger, mehrere Datensätze pro Empfänger,pro Empfänger ein Anhang

Hallo!

Ich habe mal wieder ein Office-Problem:

Ich habe eine Exeldatei mit mehreren Datensätzen. Jedem Datensatz ist ein Sachbearbeiter zugeordnet (mit E-Mail-Adresse)

Allerdings kommt ein Sachbearbeiter auch für mehrere Datensätze infrage.

Ich möchte jetzt für jeden Sachbearbeiter eine eigene Excel-Liste erstellen, die dann per E-Mail-Anhang automatisch an den jeweiligen Sachbearbeiter geschickt wird.

Beispiel:

Datensatz1|emailadresse1

Datensatz2|emailadresse1

Datensatz3|emailadresse1

Datensatz4|emailadresse2

Datensatz5|emailadresse2

Datensatz6|emailadresse3

usw.

Die Datensätze 1-3 haben Empfänger 1 zugeordnet

Die Datensätze 4-5 haben Empfänger 2 zugeordnet

Der Datensatz 6 hat Empänger 3 zugeordnet

Jetzt soll aus den Datensätzen 1-3 eine Exceldatei erzeugt werden, aus den Datensätzen 4-5 eine weitere, und ebenfalls aus Datensatz 6 noch eine usw.

Diese Dateien sollen dann an den jeweils zugeordneten Empfänger geschickt werden (1 Empfänger -> 1 Datei mit allen Datensätzen, die ihn betreffen.

Beim normalen Serienbrief bekomme ich es nur hin, dass ein Sachbearbeiter pro Datensatz eine separate Mail bekommt. Das möchte ich vermeiden.

Ich hoffe, da steigt jetzt jemand durch und versteht, was ich meine ;)

Und noch mehr hoffe ich, dass mir jemand von euch helfen kann.

Gruß Phil

Word, Office, Excel, Serienbrief, Serienmail
2 Antworten
Grafiken im Serienbrief (Word/Excel)

Hallo,

ich soll auf der Arbeit eine Umfrage durchführen. Jeder, der teilgenommen hat, soll seine individuelle Auswertung erhalten (erstellt in Word). So weit so gut. Die Texte bekomme ich mit Wenn-Funktionen gut gesteuert, sodass ich nicht jeden einzelnen errechnen muss und schauen muss, wer mit welcher Punktzahl welchen Text bekommt. Das ist alles relativ easy, aber jetzt soll ich aus den Werten noch Diagramme erzeugen und die mit in die Auswertung packen (links die erste Grafik, dann der dazugehörige Text, dann auf der 2. Seite wieder oben eine Grafik und darunter dann wieder der Text).

Wie gesagt, die Texte sind nicht das Problem. Das Problem ist eigentlich nur, das mit den individuellen Diagrammen. Zum Einen würde ich mir das mit dem Erstellen gerne vereinfachen, aber das wird wohl nicht anders gehen als einfach ein "Master-Diagramm" zu erstellen, zu kopieren und die Datenquelle in jedem einzelnen Diagramm manuell zu ändern. Ich habe nur die Angst, wenn ich die Diagramme manuell in die Word-Dokumente einfügen muss, dass ich dann Zuordnungsfehler mache.

Jetzt meine Frage: Gibt es die Möglichkeit, diese individuellen Diagramme auch mit per "Serienbriefknopf-Drücken" mit in die Word-Datei zu übernehmen?

Ich hoffe auf eine positive Antwort, aber ich befürchte fast, dass ich das alles manuell machen muss. :-(

Danke dennoch für das Durchlesen und eventuell auch für Eure Antworten.

Liebe Grüße

Rebekka

Word, Excel, Microsoft Office, Serienbrief, MS-Office
3 Antworten

Meistgelesene Fragen zum Thema Serienbrief

Word 2013 - Sereienbrief Etikett - wird nur 1 Etikett pro Seite gedruck

1 Antwort

"Null" im Seriendruck-Feld ...?

2 Antworten

Kann man Serienbriefe nicht doppelseitig ausdrucken?

1 Antwort

Serienbrief per E-Mail mit Anhang

4 Antworten

Warum wird die Hausnummer 3a zu einer 0 beim Serienbrief?

2 Antworten

DHL Paketscheine via Word Seriendruck oder ähnlichem BEdrucken

1 Antwort

Welches Dateiformat für Serienbriefe

3 Antworten

Nachteile der Seriebrieffnktion bei MS Word

3 Antworten

hilfe, serienbrief, word, wie kann ich liebe durch lieber ersetzen

4 Antworten

Serienbrief - Neue und gute Antworten