宏excel if else语句

时间:2016-05-03 06:19:16

标签: excel vba

我正在创建一个宏来检查整列中的单元格。我比较了第一个细胞,第二个细胞,第二个细胞和第三个细胞,如果后续细胞小于前一个细胞,我会在它们之间添加一整行零,我该怎么做? >

我有这样的事情:

Sub hello()
    For i = 1 To 10000
        If (C1 - C2 > 1) Then
            C2.EntireRow.Insert
        End If
    Next i
End Sub

但它失败了,这样做的正确方法是什么?

1 个答案:

答案 0 :(得分:-1)

首先,我已将10000值更改为行结束语句。因此,您不必为每个案例更改For循环并摆脱不必要的循环。插入新行后,必须增加i值两次才能跳过由于差异而创建的空行。在添加新行时,您必须选择i + 1,因为Excel会默认添加新行并向下移动值。

Sub hello()
       For i = 1 To Range("A10000").End(3).Row
           If (Cells(i, 1) - Cells(i + 1, 1) > 1) Then
               Cells(i + 1, 1).EntireRow.Insert
               i = i + 1
       End If
  Next i
End Sub