2015-10-28 46 views
0

我打电话给一个filedialog,但出于某种原因,我得到了屏幕截图中的错误。调用它的代码是: Runtime Error从VBA Access 2010文件对话框调用不起作用

Private Sub cmdSelectFile_Click() 
    Set objDialog = Application.FileDialog(msoFileDialogFilePicker) 

    With objDialog 
    .AllowMultiSelect = False 
    .Show 
    If .SelectedItems.Count = 0 Then 
     MsgBox "No file selected." 
    Else 
     txtFilePath = .SelectedItems(1) 
    End If 
    End With 
End Sub 

任何人能够说的错误是什么?参考文献既有办公室14对象库和接入14库包括

感谢

+0

查看我在下面发现的解决方案 –

回答

0

你必须首先声明变量:

Private Sub cmdSelectFile_Click() 
Dim objDialog As Office.FileDialog 
Set objDialog = Application.FileDialog(msoFileDialogFilePicker) 

With objDialog 
    .AllowMultiSelect = False 
    .Show 
    If .SelectedItems.Count = 0 Then 
    MsgBox "No file selected." 
    Else 
    txtFilePath = .SelectedItems(1) 
    End If 
    End With 
End Sub 
+0

试图添加暗淡语句 - 给出错误,它是用户定义的类型 –

+0

不幸的是我无法在2010年进行测试,但它适用于Office 2013 Pro –

0

库似乎牛逼不是拿起msofiledialogpicker-改成了msofiledialogopen和它工作得很好。不知道为什么 - 它在一台机器上与picker一起工作,但不能在其他机器上的网络上工作,但这种解决方案确实有效。