在列中的2个值之间添加多行

时间:2017-01-12 23:41:07

标签: excel vba excel-vba

我有3000多行数据。我想找到Cell(x)= A和的位置 next Cell = B然后在其间添加5个空行。

Sub AddRow()

    Dim Col As Variant
    Dim BlankRows As Long
    Dim LastRow As Long
    Dim R As Long
    Dim StartRow As Long

    Col = "K"
    StartRow = 2
    BlankRows = 1

    LastRow = Cells(Rows.Count, Col).End(xlUp).Row
    Application.ScreenUpdating = False

    With ActiveSheet
        For R = LastRow To StartRow + 1 Step -1
            If .Cells(R, Col) = 32.5 And .Cells(R, Col).Offset(1, 0) = 42.5 Then
               .Cells(R, Col).EntireRow.Insert Shift:=xlUp
               .Cells(R, Col).EntireRow.Insert Shift:=xlUp
               .Cells(R, Col).EntireRow.Insert Shift:=xlUp
               .Cells(R, Col).EntireRow.Insert Shift:=xlUp
               .Cells(R, Col).EntireRow.Insert Shift:=xlUp
            End If
        Next R
    End With
    Application.ScreenUpdating = True

End Sub 

我有下面的代码几乎可以工作,但在行下面留下“32.5s”之一

<?php

  if (language_attribute('en'))
  {
    (img/en.jpg)
  }
  else 
  {
    (img/de.jpg)
  }

?>

1 个答案:

答案 0 :(得分:0)

几乎就在那里。快速修复:以这种方式进行插入:

.Cells(R + 1, Col).EntireRow.Insert Shift:=xlUp  ' <-- R+1

那就是说,尝试重构你的代码,即在一个小循环中进行这些插入,更重要的是,限定你的范围。 With条款可以帮助您。