基于单元格值删除多行

时间:2016-04-13 21:31:27

标签: excel vba

尝试使用宏来清理我正在处理的报告。

我想根据一个单元格值删除多行。因此,如果单元格F8包含大于100的值,那么我想删除第8,7,6和8行的全部内容。 5.

这里有一点VBA Excel新手。任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:0)

试试吧!只需将此代码复制并粘贴到新的子VBA上,当单元格F8> 100时,删除行5,6,7& 8

Sub delete()

If Range("F8").Value > 100 Then
    Rows("5:8").delete Shift:=xlUp
End If

End Sub

Value cell F8

答案 1 :(得分:0)

也许你想从以下内容开始

Option Explicit

Sub Delete4PreceedingRows()

Dim cellsToCheck As Range, cell As Range

Set cellsToCheck = ActiveSheet.Range("F1:F100") '<== set here the range address you want to scan
For Each cell In cellsToCheck
    If cell.value > 100 Then cell.EntireRow.Offset(-3).Resize(4).delete Shift:=xlUp
Next cell

End Sub

其中Offset()Resize()是非常有用的Excel Range对象方法,您可能希望从(https://msdn.microsoft.com/en-us/library/office/ff838238.aspx

开始学习Excel VBA