GetSaveAsFileName mit . (Punkt) im Dateinamen
13.05.2025 15:23:02
{Boris}
ich speichere eine Datei wie folgt bewusst als xlsx (also ohne Makros).
Dabei ist mir gerade aufgefallen, dass der InitialFileName nicht angezeigt wird, sobald der Dateiname einen . (Punkt) enthält, obwohl der testweise angegebene Dateiname (Hallo.Welt) am Ende ja zulässig ist.
Woran liegt das bzw. was muss ich wie ändern?
Sub SpeichernUnterDialog_XLSX()
Dim Dateiname As Variant
Dim Filter As String
Const MeinDateiname As String = "Hallo.Welt"
On Error GoTo ERR_HANDLER
' Definiere den Filter für den Dateityp "xlsx"
Filter = "Excel-Arbeitsmappe (*.xlsx), *.xlsx"
' Öffne den "Speichern unter"-Dialog und lege den Filter fest
Dateiname = Application.GetSaveAsFilename(InitialFileName:=MeinDateiname, fileFilter:=Filter, FilterIndex:=1, Title:="Speichern unter")
' Überprüfen, ob der Benutzer einen Dateinamen ausgewählt hat
If Dateiname > False Then
' Speichere die Arbeitsmappe unter dem angegebenen Dateinamen
Application.DisplayAlerts = False
ThisWorkbook.SaveAs Filename:=Dateiname, FileFormat:=xlOpenXMLWorkbook
MsgBox "Datei wurde gespeichert als " & Dateiname, vbInformation, "Datei erfolgreich gespeichert."
Else
MsgBox "Speichern abgebrochen", vbInformation, "Datei wurde nicht gespeichert."
End If
ERR_HANDLER:
Application.DisplayAlerts = True
End Sub
Danke vorab und viele Grüße
Boris
Anzeige