Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Anzeige
Inhaltsverzeichnis

AfterSave Ordner erstellen

Forumthread: AfterSave Ordner erstellen

AfterSave Ordner erstellen
11.05.2020 15:55:16
Anna
Hallo liebe Leute
Brauche mal eure Hilfe
Für meine Rechnungs-Archivierung möchte ich gerne das meine Excel Datei nach Monat gespeichert werden
Dazu soll automatisch immer ein Ordner nach Monat im Verzeichnis "Archiv" erstellt werden
Kann mir bitte dabei einer helfen meinen Code zu erweitern?

Private Sub Workbook_AfterSave(ByVal Success As Boolean)
Application.DisplayAlerts = False
Application.EnableEvents = False
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:="C:\Users\Firma\OneDrive\ _
Dokumente\Archiv\" & [D5] & "_" & [B11] & Format(Now, "_DD.MM.YYYY_hh.mm.ss") & ".pdf"
Application.EnableEvents = True
Application.DisplayAlerts = True
End Sub

Anzeige

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: AfterSave Ordner erstellen
11.05.2020 16:11:56
Martin
Hallo Anna,
teste mal, ob der Code so funktioniert:
Private Sub Workbook_AfterSave(ByVal Success As Boolean)
Dim strFolder As String
strFolder = "C:\Users\Firma\OneDrive\Dokumente\Archiv\" & Format(Date, "MMMM")
If Dir(strFolder, vbDirectory) = "" Then
MkDir (strFolder)
End If
With Application
.DisplayAlerts = False
.EnableEvents = False
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, Filename:=strFolder & "\" & [D5] & " _
_" & [B11] & Format(Now, "_DD.MM.YYYY_hh.mm.ss") & ".pdf"
.EnableEvents = True
.DisplayAlerts = True
End Sub
End With
Viele Grüße
Martin
Anzeige
AW: AfterSave Ordner erstellen
11.05.2020 16:13:40
Nepumuk
Hallo Anna,
teste mal:
Option Explicit

Private Declare Function MakeSureDirectoryPathExists Lib "imagehlp.dll" ( _
    ByVal DirPath As String) As Long

Private Sub Workbook_AfterSave(ByVal Success As Boolean)
    
    Const FOLDER_PATH As String = "C:\Users\Firma\OneDrive\Dokumente\Archiv\"
    
    Dim strfolder As String
    
    strfolder = FOLDER_PATH & MonthName(Month(Date)) & "\"
    
    If MakeSureDirectoryPathExists(strfolder) = 1 Then
        
        ExportAsFixedFormat Type:=xlTypePDF, Filename:=strfolder & Range("D5").Text & _
            "_" & Range("B11").Text & Format$(Now, "_dd.mm.yyyy_Hh.Nn.Ss") & ".pdf"
        
    Else
        
        Call MsgBox("Fehler beim erstellen des Ordners." & vbLf & vbLf & _
            "PDF-Export fehlgeschlagen.", vbCritical, "Dateisystemfehler")
        
    End If
End Sub

Gruß
Nepumuk
Anzeige
Anzeige
Anzeige
Live-Forum - Die aktuellen Beiträge
Datum
Titel
14.05.2026 13:31:09
14.05.2026 09:50:42
13.05.2026 19:14:18