Excel文件对话框多次出现

时间:2017-09-06 14:55:49

标签: excel vba

我正在使用name来允许用户选择要从中导入数据的文件。但是,在用户选择文件后,它会再次打开文件对话框,要求他们选择文件。在继续之前,它会做2-3次。

我是否意外创建了一个循环?

Application.FileDialog(msoFileDialogOpen)

所以我已经尝试了你的每个解决方案,我仍然得到两个打开的文件对话框,但是我之前没有注意到的两者之间存在差异。第一个框具有相应的“选择文件”标题,但第二个框具有标题的“更新值:FilesSelected”。我还添加了之前排除的最后几行。再次感谢你的帮助。

3 个答案:

答案 0 :(得分:2)

.Show方法与Userform.Show类似地显示文件对话框。因此,每次拨打.Show时,都会显示对话框。

With Application.FileDialog(msoFileDialogOpen)
    .Title = "Choose File"
    .AllowMultiSelect = False
    .Show
    If .SelectedItems.Count = 0 Then
        Exit Sub
    Else
        FileSelected = .SelectedItems(1)
    End If

End With

答案 1 :(得分:1)

你可以缩短它:

filepath = Application.GetOpenFilename("All files (*.*),*.*")
If filepath = False Then Exit Sub
MsgBox filepath 

答案 2 :(得分:0)

在您的代码中,您将两次调用Show方法。因此对话框显示两次。请尝试以下方式......

Private Sub CommandButton1_Click()
    Dim strPathAndFile As String
    With Application.FileDialog(msoFileDialogOpen)
        .Title = "Choose File"
        .AllowMultiSelect = False
        If .Show <> -1 Then Exit Sub
        strPathAndFile = .SelectedItems(1)
    End With
End Sub

希望这有帮助!