此代码使用户可以选择多个文件打开。最后一行在我的PC上可以正常运行,但是我的远程用户告诉我在Mac上它给出了一个错误Run-Time error 91: Object variable or block variable not set
Sub OpenSeveralFiles()
Dim fd As FileDialog
Dim FileChosen As Integer
Dim fileName As String
Dim i As Integer
Set fd = Application.FileDialog(msoFileDialogFilePicker)
fd.InitialView = msoFileDialogViewList
这很奇怪,因为我希望该错误会在Set
行处出现。
是否与我未指定目录路径有关?在Windows VBA中,它默认为CurDir
,但我不知道在Mac上会发生什么。
答案 0 :(得分:0)
如果@Rory是正确的,但是我不能在Mac上使用FileDialog,我找到了一种解决方法。我警告我的用户,如果他使用的是Mac,则必须在运行宏之前打开要处理的文件:
On Error resume next
Set fd = Application.FileDialog(msoFileDialogFilePicker)
On Error goto 0
If fd is not Nothing
'select and process the files like I did before
Else
' Loop through all the OPEN files and process them
End If