VBA Excel运行时错误424

时间:2014-10-02 09:53:27

标签: excel vba excel-vba

我知道这是在这个论坛和其他论坛上提出的一个非常常见的问题,但是给出的答案对我没有帮助,所以我再次提出这个问题。

我正在尝试使用Excel创建一个测验,为此我添加了一个复选框来检查以验证选择并查看答案。问题是我有这个VBA运行时错误'需要对象',我无法解决它。

这是我正在执行的VBA代码

Sub affichageQuestion()

    Dim xlw As Workbook    
    Set xlw = Workbooks("quiz.xlsm")

    xlw.Worksheets("Sheet1").Shapes(2).Visible = msoTrue

    xlw.Worksheets("Sheet1").Range("B3") = xlw.Worksheets("Sheet2").Range("A2").Value
    xlw.Worksheets("Sheet1").Range("B8") = xlw.Worksheets("Sheet2").Range("B2").Value
    xlw.Worksheets("Sheet1").Range("B10") = xlw.Worksheets("Sheet2").Range("B3").Value
    xlw.Worksheets("Sheet1").Range("B12") = xlw.Worksheets("Sheet2").Range("B4").Value
    xlw.Worksheets("Sheet1").Range("B14") = xlw.Worksheets("Sheet2").Range("B5").Value

    If (validate.Value = -1) Then
        If (xlw.Worksheets("Sheet1").Range("F3").Value = 2) Then
            xlw.Worksheets("Sheet1").Shapes(2).Visible = msoTrue
        End If
    End If

End Sub

使用Step into功能,我在此行找到错误

If (validate.Value = -1) Then

但我可以找到解决方案 如果有人能尽快回答我,我会真的很满意,因为我的实习负责人正在等待测验

1 个答案:

答案 0 :(得分:0)

如果您的复选框直接位于工作表上,请尝试:

If xlw.Worksheets("Sheet1").validate.Value = False Then