VisualBasic VBA Error 76 / Office 2010 Datei kann nicht gespeichert werden

Cassius1985

Captain
Registriert
Sep. 2004
Beiträge
3.579
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:

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:
Hallo,
bitte den VB-Code mal anständig formatieren. Hierzu gibt es im Editiermodus die Schaltfläche "Code einfügen". Damit wird der Code lesbar.

Danke :)

greetz
hroessler
 
Ist geändert, danke für die Info, hab ich vergessen :)

Ich glaube allerdings nicht dass es am Code liegt, sondern an Office oder sogar dem BS (Windows 7 Prof)

Ich weis nur nicht wo ich ansetzen soll. An Berechtigungen sollte es nicht liegen, da ich auch lokal keine Dateien aus dem Makro speichern kann.
 
Zurück
Oben