运行时错误2147024809(80070057):找不到指定的对象

时间:2014-05-29 17:16:15

标签: forms excel-vba vba excel

我最近遇到了一个问题,我的项目真的让我陷入了困境。自项目启动以来,我的项目已不再承认我的11种形式中的2种。表单的名称没有改变,调用表单的代码也没有改变。之前调用这两个表单没有问题,现在存在此运行时错误。不再出现的两种形式是“Vacation_Days_Form”和“Vacation_Holidays_Form”,如下面的代码所示。另一个问题是正在调用的“Holidays_Form”userform,但实际上没有数据输出到程序中。同样,此表单以前工作正常,现在不是在没有更改与表单相关的代码之后。下面代码中唯一一个主要形式是“Normal_Iteration”,它嵌入在Module1(不是用户表单)中。以下是我的代码:

Private Sub UserForm_Initialize()
    With Options
        .AddItem "No Vacation or Holidays"
        .AddItem "Vacation"
        .AddItem "Holiday"
        .AddItem "Vacation & Holidays"
    End With
End Sub

Private Sub Vacation_Options_Select_Click()
    Vacation_Options_Form.Hide
    Dim List_Options As Integer
    For List_Options = 0 To Options.ListCount - 1
        If Options.Selected(List_Options) = True Then
            If Options.List(List_Options) = "No Vacation or Holidays" Then
                Call Normal_Iteration
            ElseIf Options.List(List_Options) = "Vacation" Then
                Vacation_Days_Form.Show
            ElseIf Options.List(List_Options) = "Holiday" Then
                Holidays_Form.Show
            ElseIf Options.List(List_Options) = "Vacation & Holidays" Then
                Vacation_Holidays_Form.Show
            End If
        End If
    Next
End Sub

提前回答这些问题:1)是的,我已经检查过我的程序中是否仍然存在这些用户表单; 2)是的,用户表单的命名与上面代码中调出的完全相同。

感谢您帮助我发现问题。如果我需要额外的代码发布,请告诉我。

此致

约旦

1 个答案:

答案 0 :(得分:1)

我最终只是重做我的项目,基本上是从头开始将我的代码,表单,格式等复制到另一个工作簿。我仍然不知道到底发生了什么。 MS Office 2007似乎存在严重的可靠性问题。谢谢你的帮助。