编译错误:对象必需

时间:2018-03-14 19:41:21

标签: vba excel-vba object compiler-errors excel

我遇到了

的问题
  

编译错误:对象必需

我查看了网站上已解决的类似问题,但出于某种原因,我仍然遇到了这个问题。

我正在使用的代码在列H(第8列)下的行与不匹配单元格之间添加行。它大部分时间都有效,但是一个数据集包括数字和结尾,单元格中的单元格中包含字母和数字。如果你看到我遗失的东西,请告诉我。

Sub SepP1()

Sheets("Format Area (Paste Here)").Activate

Dim LR As Long
Dim j As Integer
Dim i As Integer

Set LR = Cells(Rows.Count, 8).End(xlUp).Row 'I AM GETTING THE ERROR HERE

i = 2

For j = 2 To LR

i = i + 1

If Cells(j, "H").Value = Cells(i, "H") Then

ElseIf Cells(j, 8).Value <> Cells(i, 8) Then
    Application.CutCopyMode = False
    Rows(i).Insert Shift:=xlShiftDown
    Rows(i).Insert Shift:=xlShiftDown
    Rows(i).Insert Shift:=xlShiftDown
    j = j + 3
    i = i + 3
    End If

Next j

End Sub

1 个答案:

答案 0 :(得分:1)

在处理对象变量时仅使用SetLong是一个数字,而不是一个对象。

改变这个:

Set LR = Cells(Rows.Count, 8).End(xlUp).Row

对此:

LR = Cells(Rows.Count, 8).End(xlUp).Row