ich habe hier einen kleinen Codeausschnitt.
Der Code soll mir einen neuen Ordner anlegen (läuft) und mir darin dann meine Sheets als neue Datei abspeichern.
Exemplarisch zeige ich hier nur ein Sheet.
Mein Fehler taucht explizit hier auf:
ActiveWorkbook.SaveAs Filename:= _
cf.Path & Sheets("Hofer-Ranks").Name & "_" & Datum & ".xlsx"
Mein Rechner schreibt mir den Pfad bzw den Ordnernamen in den Dateinamen.
Vorher hatte ich ein solches Konstrukt. Dieses hat funktioniert. (Das war, bevor ich entschieden habe die Funktion zum Anlegen eines Ordners zu nutzen.)
ActiveWorkbook.SaveAs Filename:= _
"G:\GBC General\NeTr\Ranking_TEST\" & Sheets("Hofer-Ranks").Name & "_" & Datum & ".xlsx"
Mein Pfad ist doch eigentlich in strFolder enthalten.
cf nimmt beim Debuggen denselben Wert an. Enthält auch den Pfad.
Dennoch wird nicht unter dem Pfad gespeichert. Stattdessen, haut es mir den Ordnernamen in den Dateinamen rein.
Ich wäre sehr dankbar, wenn mir jemand meinen (vermutlich) offensichtlichen Fehler aufzeigen könnte.
Danke euch!
Sub SaveRanks()
Application.ScreenUpdating = False
Dim Datum As String
Dim fs, cf, strFolder
Dim FolderName As String
Datum = Format(Now, "mm_yyyy")
FolderName = Datum & "_" & "Group_Demand_Ranking"
strFolder = "G:\GBC General\NeTr\Ranking_TEST\" & FolderName & ""
Set fs = CreateObject("Scripting.FileSystemObject")
If fs.FolderExists(strFolder) = True Then
MsgBox "'" & strFolder & "' already exists!"
Else
Set cf = fs.CreateFolder(strFolder)
If fs.FolderExists(strFolder) = True Then
Else
MsgBox "'" & strFolder & "' was not created successfully!"
End If
End If
Sheets("Hofer-Ranks").Copy
ActiveWorkbook.SaveAs Filename:= _
cf.Path & Sheets("Hofer-Ranks").Name & "_" & Datum & ".xlsx"
BlattschutzSave
ActiveWorkbook.Save
ActiveWorkbook.Close