【问题标题】:Error on Method 'Range' of object '_Global' failed对象“_Global”的方法“范围”错误失败
【发布时间】:2013-04-09 07:29:57
【问题描述】:

我正在运行一个计时器。我想让计时器倒计时。这一切都有效。但是,计时器需要在不同的行中经历很多次,但在按下按钮之前不应移动到下一次。这将允许我提取倒计时的时间。

有什么想法吗? (我将完成用作按钮,它所做的只是黑色一个单元格)。我希望当我这样做时,时间会重置并转到下一列。

Sub GoGo()

作为布尔值的公共 GoGo

GoGo = 真

结束子

子运行()

Dim lastrow As Long, i As Long

        For i = 23 To 32


           DoEvents
            If GoGo = True Then

                If Cells(i, 1) <> 0 Then

             Range("B5").Value = Cells(i, 2).Value
             Range("E5").Value = Cells(i, 3).Value
             Range("E11").Value = Range("C33").Value

             Application.Run ("Realcount")
             Application.Run ("Realcount2")

            End If
            End If



            Next i

结束子

【问题讨论】:

    标签: excel vba


    【解决方案1】:

    你不能做 Range(i, 2) 或 Range(i, 3)。你说的是 Cells(i, 2) 吗?

    【讨论】:

    • 修复了它。您是否对如何通过 for 循环有任何见解,然后在按下按钮之前不要转到下一个“i”。
    • 快速而肮脏的方法是在你想要等待用户点击的每个点抛出一个 MsgBox。
    • 使用Do...While 循环、公共变量和DoEvents 允许按钮在循环中设置公共变量。
    • 问题是你看不到的代码是定时器。它倒计时和计数。一个按钮很好,因为它可以随时按下。另一方面,消息框是由某些东西提示的。
    • 这是我的带有 DoEvents 和公共变量的新代码,但我无法让它工作。我为代码道歉,我不知道如何在cmets中格式化!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多