[英]Delete Multiple Rows Based On Cell Value
試圖提出宏來清理我正在處理的報告。
我想基於一個單元格值刪除多行。 因此,如果單元格F8包含一個大於100的值,那么我想刪除第8、7、6和5行的全部。
這里有一些VBA Excel新手。 任何幫助將不勝感激。
嘗試一下!,只需將此代碼復制並粘貼到新的子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
也許你想從如下開始
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
對象的非常有用的方法,您可能要開始研究Excel VBA(請參閱https://msdn.microsoft.com/zh-cn/library/office/ff838238.aspx )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.