Error 76 - MkDir
15.01.2019 10:48:35
Chris
ich habe seit ein paar Tagen ein kleines Problem und zwar:
ich möchte mit Hilfe von VBA einen Sereienbrief in einzelne PDF's umwandeln und in einem Zielordner speichern, die PDF sollen nach dem Seriendruckfeld Kontoname und EMail banannt werden. Das funktioniert auch, allerdings nur bei den ersten 60 Serienbriefen (insgesamt ca. 450), dannach bekomme ich den Error 76 "path not found".
Hat von euch jemand einen Vorschlag wie ich dieses Problem behandeln kann?
Private Sub CommandButton1_Click()
Dim iBrief As Integer, sBrief As String
Dim AppShell As Object
Dim BrowseDir As Variant
Dim Path As String
On Error GoTo ErrorHandling
ActiveDocument.Activate
Set AppShell = CreateObject("Shell.Application")
Set BrowseDir = AppShell.BrowseForFolder(0, "Ordner auswählen", &H1000, 17)
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 Trim(Path) 'Hier kommt die Fehlermeldung nach dem 60 Brief
On Error GoTo ErrorHandling
MsgBox "Serienbriefe werden exportiert. Dieser Vorganag kann einige Minuten dauern", _
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("Kontoname").Value & "_" & .DataFields("EMail"). _
Value & "_" & ".pdf"
End With
.Execute Pause:=False
If .DataSource.DataFields("Kontoname").Value > "" Then
ActiveDocument.SaveAs Filename:=sBrief, FileFormat:=wdFormatPDF
End If
ActiveDocument.Close False
If .DataSource.ActiveRecord 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
Vielen Dank schonmal im Voraus!