"运行时错误' 1004' - 无法找到文件"

时间:2016-03-04 21:42:51

标签: vba excel-vba runtime runtime-error excel

我正在运行一个VBA脚本,它将dbf文件批量转换为Excel电子表格。本周早些时候,我已经使用过这个脚本几次了,它运行得很好。

但是,我尝试再次使用它来获取一些新数据,我遇到了标题中列出的错误:"抱歉,我们无法找到 file .dbf,它是否可能被移动,重命名或删除?"

令人沮丧的是,当我回到以前用于以前数据的旧模块时,它不再有效!代码中没有任何变化,所以我很困惑。这是"

Sub OpenDBF()

Folder = "C:\Users\Smiliepants101\Documents\Brown\Thesis\CatAg\"

FName = Dir(Folder & "*.dbf")

Do While FName <> ""
    Set bk = Workbooks.Open(Filename:=FName)
    bk.Close savechanges:=True

    FName = Dir()
Loop

End Sub

1 个答案:

答案 0 :(得分:1)

FName = Dir(Folder & "*.dbf")

FName只是文件 name ,而不是完整路径。如果Folder碰巧是当前目录,您的代码将会起作用,但如果不是,则可能会失败。

而不是:

Set bk = Workbooks.Open(Filename:=FName)

请改为:

Set bk = Workbooks.Open(Filename:=Folder & FName)