Vba 在MS Excel 2013 32位中连续调用2次时,Application.FileDialog.Show不起作用
2013年(32位) 调用了两个FD.Show,但其中一个不起作用。 文件选择窗口不显示并直接执行下一条语句。 如何解决这个问题 我的示例代码)Vba 在MS Excel 2013 32位中连续调用2次时,Application.FileDialog.Show不起作用,vba,show,filedialog,Vba,Show,Filedialog,2013年(32位) 调用了两个FD.Show,但其中一个不起作用。 文件选择窗口不显示并直接执行下一条语句。 如何解决这个问题 我的示例代码) 非常直截了当的回答,您无法执行第二次FD调用,因为您在第一次FD调用中没有设置end,这可能会在我的情况下引发错误,下面是我为您提供的解决方案,并且工作正常: Set FD = Application.FileDialog(msoFileDialogFilePicker) With FD .Show If .Sele
非常直截了当的回答,您无法执行第二次FD调用,因为您在第一次FD调用中没有设置end,这可能会在我的情况下引发错误,下面是我为您提供的解决方案,并且工作正常:
Set FD = Application.FileDialog(msoFileDialogFilePicker)
With FD
.Show
If .SelectedItems.Count > 0 Then
workbook1 = .SelectedItems(1)
End If
End With
With FD
.Show
If .SelectedItems.Count > 0 Then
workbook2 = .SelectedItems(1)
End If
End With
对我来说很好。谢谢你的测试和回答。在64位excel 2016中,该功能运行良好,但在32位excel 2013中不起作用。太糟糕了,我没有为您提供较旧的版本测试,可能您可以将FD拆分为2个子项,以使其成功。
Set FD = Application.FileDialog(msoFileDialogFilePicker)
With FD
.Show
If .SelectedItems.Count > 0 Then
workbook1 = .SelectedItems(1)
End If
End With
With FD
.Show
If .SelectedItems.Count > 0 Then
workbook2 = .SelectedItems(1)
End If
End With