VBA 6.5 - "错误的文件名或编号" Form.Show上的错误 - 运行时错误52

时间:2015-02-18 15:37:17

标签: excel forms vba excel-vba

编辑:这最终成为了一个" MS VBA IDE是如何工作的?"有点问题。当它出错时突出显示一个函数调用,但实际上导致问题的是函数内的一行代码。通过使用" Step Into"和"跳过"操作(默认分别为F8和Shift + F8),您可以遍历代码,直到找到实际导致错误的行。尝试跳过行将导致VBA IDE返回到最初突出显示的代码行。


我有一个简单的VBA用户表单,我已经开发用于Microsoft Excel 2007.我的一张表上的按钮使用以下VBA行显示此表单:

Sub ShowMyDialog()
    MyFormName.Show
End Sub

这昨天工作得非常好。今天我打开.xlsm文件并单击按钮再次显示表单,然后我得到一个"运行时错误52:错误的文件名或数字"错误。

当我点击" Debug"它只是带我到我上面显示的表格。名称是正确的,自上次处于工作状态以来,这个名称没有改变。我的表单 从目录中打开文件,但如果这是问题,它是否会指示我执行文件打开的代码行?

谢谢!

1 个答案:

答案 0 :(得分:1)

  

我的表单会打开目录中的文件,但是如果这是问题,那么它是否会指示我执行文件打开的代码行?

不是没有错误处理程序,并且没有配置为在类中断的错误处理。您发布的代码与问题无关,并且不会导致错误。

您的表单中有一些代码在加载/初始化/激活时运行,无法打开文件,如错误消息所示。

访问外部资源的任何代码都必须进行错误处理。

Private Sub DoSomething
On Error GoTo CleanFail

    DoSomethingThatCanBlowUp

CleanExit:
    Exit Sub

CleanFail:
    ' handle errors here
End Sub