excel VBA对于Range对象的End方法 – 应用程序定义或对象定义的错误
我遇到了使用范围对象的End方法的错误。
下面的代码是从我的程序摘录,当我到最后一行时,我得到以下错误:“应用程序定义或对象定义的错误”
Sub DataGroup(testCell, j, k) Dim archive As Range Set dataCellsA = Worksheets("DATA").Range("B2") Set dataCellsB = Worksheets("DATA").Range("I2") For i = 0 To 30 Set currentLine = testCell.Offset(i, 0) Set archive = Worksheets("ARCHIVE").Range("B4").End(x1Down)
然而,在我的程序的后期部分,我似乎有相同的实现,但是我没有收到这部分的任何错误。
Set dataCellsA = Worksheets("DATA").Range("C2") Set dataCellsB = Worksheets("DATA").Range("J2") Dim lastCellA As Range Dim lastCellB As Range Set lastCellA = dataCellsA.End(xlDown) Set lastCellB = dataCellsB.End(xlDown)
两者有什么区别? 我确保将variables声明为范围,并且我小心地使用“Set”指定来确保它是一个对象,而不是值。
所以,这里是答案:你有x1Down
你应该有xlDown
(1而不是l)