VBA - 运行时间1004

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VBA - 运行时间1004相关的知识,希望对你有一定的参考价值。

我正在尝试这个命令

Sub Name() 
Dim n As Integer
Do Until Cells(2, n) = "" 
    n = n + 1 
    Cells(2, n).Value = n 
Loop
End Sub

但我有“运行时错误1004:应用程序定义或对象定义的错误”消息。我在这里想念的是什么?

答案

根据注释,您将永远循环,因为您的单元格将始终具有已分配的值,然后检查值。在指定当前单元格的值后移动n增量。然后,您的支票将是正确的。

Sub Name() 
    Dim n As Integer
    n=1 ' initialize N to where you want to start.
    Do Until Cells(2, n) = ""   
        Cells(2, n).Value = n 
        n = n + 1 //move this line to end of loop.
    Loop
End Sub
另一答案

也许子名称不正确,如果列n + 1 =“”也可以停止循环

编辑:我忘了尝试的另一件事是,do until cells(1,n)<>=""

Sub nn()
    Dim n
    n = 1
    Do Until Cells(2, n + 1) = ""
        n = n + 1
        Cells(2, n).Value = n
    Loop

End Sub

以上是关于VBA - 运行时间1004的主要内容,如果未能解决你的问题,请参考以下文章