2013-05-13 61 views
1

下面的vba代碼(從here修改)將在E列中具有值「0」的任何行上插入一個空行。不插入空行,是否有方法將行復製爲「0」並將其插入到自身之上?可以修改此vba代碼來執行此操作嗎?根據單元格值插入複製的行

Sub BlankLine() 

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

     Col = "E" 
     StartRow = 1 
     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) = "0" Then 
.Cells(R, Col).EntireRow.Insert Shift:=xlDown 
End If 
Next R 
End With 
Application.ScreenUpdating = True 

End Sub 
+0

插入上述*什麼複製的行*?無論如何,是的,這可以完成,而且應該相當容易。您是否嘗試過在手動執行復制/插入時使用宏錄製器?這將生成一些代碼,您可能可以使用它來修改此宏。 – 2013-05-13 02:03:22

回答

2

只需添加這行

.Cells(R, Col).EntireRow.Copy 

.Insert前行

相關問題