Excel VBA不断添加点到我的文件名结束?



我有一个奇怪的问题…

下面的代码意味着要求一个文件名,然后保存为标准文件(例如,没有宏/vba代码),它按预期工作。然而;它一直在文件名的末尾添加一个点,例如,当你选择一个现有的excel文件名)说,报告今天。xlsx)然后修改它以添加一个新的日期(说,报告昨天),然后点击保存,新的文件名变成'报告昨天.xlsx'

' open save as.. dialog box
fName = Application.GetSaveAsFilename
If fName = False Then
ElseIf fName = "" Then
fName = "defaultname" 
Else
fName = fName & ".xlsx"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=fName, FileFormat:=xlWorkbookDefault
Application.DisplayAlerts = True
End If

认为这与我首先选择一个现有的名称有关,它已经有一个扩展名,但扩展名没有出现在文件对话框中。

任何想法?

谢谢,艾伦。

编辑:修改默认名称以避免混淆

感谢Tin Bum &Nathan_Sav -我错误地将文件扩展名拉入fname变量,然后第二次附加文件扩展名。

我将fName = fName & ".xlsx"修改为fName = fName,现在它工作得很好。

在创建/编码期间,我只创建了一个新的

文件与一个全新的文件名(而不是选择一个现有的文件和修改名称),所以问题没有实现,直到报告上线。分析!希望这对其他人有帮助,

艾伦

最新更新