如何删除excel中符合特定条件的所有行,以及随后的行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何删除excel中符合特定条件的所有行,以及随后的行相关的知识,希望对你有一定的参考价值。

Example of what I'm trying to get rid of

我正在尝试消除工作表中看来已被格式化为分页的垃圾数据。在每个新“页面”的开始处,G列中的一个单元格表示“页面X”。每页的下六行都是我要删除的垃圾数据,并且有数百个“页面”。

我希望能够编写一个公式来搜索工作表中包含文本“页面”(至少在G列中)的每个单元格,然后删除该行以及接下来的六行。

答案
  1. 遍历Column G中的所有单元格>
  2. 查找单元格=page和....
  3. 将这些单元格+接下来的6行添加到Union (单元格的集合)
  4. 删除Union末尾

  5. Sub Maid()
    
    Dim ws As Worksheet: Set ws = ThisWorkbook.Sheets("Sheet1") '<-- Update
    Dim DeleteMe As Range
    Dim LR As Long
    
    LR = ws.Range("G" & ws.Rows.Count).End(xlUp).Row
    
        For i = 2 To LR
            If ws.Range("G" & i) = "page" Then
                If Not DeleteMe Is Nothing Then
                    Set DeleteMe = Union(ws.Range("G" & i).Resize(7), DeleteMe)
                Else
                    Set DeleteMe = ws.Range("G" & i).Resize(7)
                End If
            End If
        Next i
    
        If Not DeleteMe Is Nothing Then
            DeleteMe.EntireColumn.Delete
        End If
    
    End Sub
    

以上是关于如何删除excel中符合特定条件的所有行,以及随后的行的主要内容,如果未能解决你的问题,请参考以下文章

R语言怎么按条件删除某些行?

pandas如何删除指定行

python如何批量对文件夹里所有excel特定行进行删除?

MFC ListCtrl如何查找某一行的上一行或者下一行

如何将EXCEL中符合条件的数据利用公式复制到另一个工作表

SQL 连接到符合特定条件的重复行