Cassius1985
Captain
- Registriert
- Sep. 2004
- Beiträge
- 3.605
Hi zusammen,
ich habe ein seltsames Problem mit einem meiner Makro-gestützten Word Dokumente.
Dieses Dokument habe ich Anfang des Jahres mit hilfe einer Vorlage erstellt um unseren Arbeitsablauf zu vereinfachen.
Grober Umriss:
Word Dokument mit Serienbrief, Datenquelle ist eine Excel Tabelle.
Das Makro druckt jede Seite als PDF in einen Ordner und benennt die Dateien im Zusammenhang mit den Seriendruckfeldern.
Nun zum Problem: Aktuell (ich weis nicht genau seit wann) funktioniert das Makro bei mir nicht mehr.
Es kommt die Fehlermeldung VBA-76 * Probleme mit dem Pfad*
Dieser Fehler tritt allerdings NUR auf meinem PC auf. Office ist übergreifend 2010.
Ist jemandem von euch eine Option in Word/Office bekannt die das automatische Speichern von Dateien verhindert?
Hier der Code:
Es ist dabei egal ob ich versuche lokal auf LW C:\ oder im Netzlaufwerk zu speichern.
Danke vorab
Edit: Code im Spoiler ergänzt!
ich habe ein seltsames Problem mit einem meiner Makro-gestützten Word Dokumente.
Dieses Dokument habe ich Anfang des Jahres mit hilfe einer Vorlage erstellt um unseren Arbeitsablauf zu vereinfachen.
Grober Umriss:
Word Dokument mit Serienbrief, Datenquelle ist eine Excel Tabelle.
Das Makro druckt jede Seite als PDF in einen Ordner und benennt die Dateien im Zusammenhang mit den Seriendruckfeldern.
Nun zum Problem: Aktuell (ich weis nicht genau seit wann) funktioniert das Makro bei mir nicht mehr.
Es kommt die Fehlermeldung VBA-76 * Probleme mit dem Pfad*
Dieser Fehler tritt allerdings NUR auf meinem PC auf. Office ist übergreifend 2010.
Ist jemandem von euch eine Option in Word/Office bekannt die das automatische Speichern von Dateien verhindert?
Hier der Code:
Code:
Sub Serienbrief_im_PDF_Format_speichern()
Dim iBrief As Integer
Dim AppShell As Object
Dim BrowseDir As Variant
Dim Path As String
Dim sBrief 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 & "\Ausgegeben am " & Format(Now, "dd.mm.yyyy") & ""
MkDir Path
On Error GoTo ErrorHandling
Application.Visible = True
With ActiveDocument.MailMerge
.DataSource.ActiveRecord = 1
Do
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
With .DataSource
.FirstRecord = .ActiveRecord
.LastRecord = .ActiveRecord
sBrief = Path & .DataFields("A_N").Value & " " & Format(Now, "dd.mm.yyyy") & " " & "Auftrag " & .DataFields("Auftrag").Value & ".pdf"
End With
.Execute Pause:=False
If .DataSource.DataFields("A_N").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
Es ist dabei egal ob ich versuche lokal auf LW C:\ oder im Netzlaufwerk zu speichern.
Danke vorab
Edit: Code im Spoiler ergänzt!
Zuletzt bearbeitet: