0
我一直在试图找到一种方法来设置默认文件位置打开的特定Excel电子表格的默认保存选项,建议的文件名出现在对话框和默认文件类型是启用宏的工作簿(*。xlsm)。Excel VBA保存代码导致多个保存对话框
我已经完成了以下两项研究的解决方案;然而,这两个似乎都给我一个问题,三个保存对话框在另一个之后打开。
具体来说,单击保存按钮时,保存对话框将在正确的位置(“我的文档/ exceltests”)和正确的文件名称(“AAAA”)打开。然后,我单击保存按钮,提示另一个保存对话框打开具有完全相同的属性。单击保存在此对话框后,工作簿被保存在正确的位置。但是,第三个对话框也会在“我的文档”的默认位置打开。
代码示例1个
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)
With Application.FileDialog(msoFileDialogSaveAs)
.InitialFileName = "C:\My Documents\exceltests\AAAA"
.FilterIndex = 2
If .Show Then
ActiveWorkbook.SaveAs Filename:=.SelectedItems(1), _
FileFormat:=xlOpenXMLWorkbookMacroEnabled
End If
End With
End Sub
代码示例2
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, _
Cancel As Boolean)
End Sub
Dim fn
fn = Application.GetSaveAsFilename(InitialFileName:="C:\My Documents\exceltests\AAAA", _
fileFilter:=" Excel Macro Enabled Workbook (*.xlsm), *.xlsm,")
If fn <> False Then
ActiveWorkbook.SaveAs Filename:=fn, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
End If
如果任何人有任何线索,为什么发生这种情况和/或它如何被固定,我会非常感激。
谢谢!这几乎可行。它似乎已经摆脱了第二个对话框;然而,第三个(显示默认的我的文档)仍然出现。所以现在只有两个对话框。任何想法为什么发生这种情况? – yaz1069