2016-12-13 34 views
2

我有這個代碼,只刪除包含字母PGM:AGEDP行,但我不知道如何刪除下一個三行下面的第一次刪除。 PGM:AGEDP後面的三行是垃圾,它們包含一些字母,數字和符號,每次都會變化,但是字母爲PGM:AGEDP將始終保持不變。只是爲了簡單起見,如果第一行包含字母,那麼它應該與底部三個rows.These四行來刪除整個工作表很得罪超過30XsVBA:如何根據條件刪除下三行?

Sub RemovingPGM() 

Dim ws As Worksheet 
For Each ws In Sheets 
ws.Activate 

    Dim n As Long 
    Dim nlast As Long 
    Dim rw As Range 
    Set rw = ActiveWorkbook.ActiveSheet.UsedRange.Rows 
    nlast = rw.Count 
    For n = nlast To 1 Step -1 
     If (rw.Cells(n, 1).Value = "PGM:AGEDP") Then 
      rw.Rows(n).Delete 
     End If 
    Next n 
    Next ws 
End Sub 

關於進一步說明任何問題,請隨時隨意問。

+2

rw.Rows(N).Resize(4).Delete – user3598756

+0

你可以這樣做:rw.Rows(N).Delete,rw.Rows(N-1).Delete,rw.Rows(N- 2)。刪除,rw.Rows(n-4)。刪除 –

+0

@ user3598756大聲笑謝謝,這工作得很好。 – MTBthePRO

回答

0
Sub Second_DeletingPGM() 
    Dim n As Long 
    Dim nlast As Long 
    Dim rw As Range 

    Set rw = ActiveWorkbook.ActiveSheet.UsedRange.Rows 

    nlast = rw.Count 
    For n = nlast To 1 Step -1 
     If (rw.Cells(n, 1).Value = "PGM:AGEDP") Then 
      rw.Rows(n).Resize(4).Delete 
     End If 

    Next n 
End Sub