VBA Excel文件打开提示取消错误

所以我正在使用文件打开提示来收集文件名。 然后我在后台实例中打开这个文件,parsing信息到一个字典并closures文件。 这工作正常。 这个代码是:

Application.FileDialog(msoFileDialogOpen).Show sFullName = Application.FileDialog(msoFileDialogOpen).SelectedItems(1) 

如果用户按取消,这显然是一个可行的scheme,我得到以下错误:

 Invalid procedure call or argument 

我试图改变“聚集”的路线:

 If Application.FileDialog(msoFileDialogOpen).SelectedItems(1) Then sFullName = Application.FileDialog(msoFileDialogOpen).SelectedItems(1) 

但是,这仍然会带来错误。 即使禁用警报也会导致错误或“400”。 任何帮助如何使这个popup或处理它将不胜感激。

你可以使用GetSaveAsFilename

 Dim strFileName As String strFileName = Application.GetSaveAsFilename If strFileName = "False" Then MsgBox "User cancelled" 

您需要检查边界以确定是否select了任何内容

 with Application.FileDialog(msoFileDialogOpen) .Show if (.SelectedItems.Count = 0) Then '// dialog dismissed with no selection else sFullName = .SelectedItems(1) end if end with