VBA在2016年不像2013年那样工作:建议的文件名(初始FileName)未显示



我有一个代码来导出Excel选项卡并将其保存为带有预设文件名称的新文件。用户可以选择在保存之前查看文件名。这就是我一直在使用的:

InitialName = SaveString & UniqueString
fileSaveName = Application.GetSaveAsFilename(InitialFileName:=InitialName)
If fileSaveName <> False Then
    Export.SaveAs (fileSavename)
End If

savestring是保存文件夹,独特的文件是特定的文件名,每个月都会更改。用户单击导出,准备选项卡,然后将其保存为文件夹在正确的文件夹中弹出,并使用建议的文件名。只要用户命中"保存",就会将导出的选项卡保存在带有独特名称的Savest文件夹中(iniquestring中已包含.xlsx)。

自升级到Office 2016以来,唯一的建议文件名不再出现。保存为弹出窗口仍在Savestfring文件夹中打开,但是没有建议的文件名。如果用户不小心将.xlsx手动添加到文件名的末尾,则文件类型是无法使用的"文件"。

我已经在虚拟设置中打开了Excel 2013,并并排运行代码,并且在较旧版本中运行完美。有人对为什么会发生这种变化以及如何纠正它有洞察力吗?

现在,您现在需要包含与您提供的初始名称匹配的文件过滤器,因此以下内容可能会工作:

fileSaveName = Application.GetSaveAsFilename(InitialFileName:=InitialName, _
                                             FileFilter:="Excel Files (*.xlsx),*.xlsx")

最新更新