删除特定单词后的所有内容

时间:2020-02-07 16:59:37

标签: excel vba

我想使用VBA进行以下操作:1)在我的Excel工作表中找到单词“ Report:”(我知道单词“ Report:”在工作表中只会出现一次); 2)删除此单元格下面的所有内容(包括单词“ Report”)

enter image description here

因此,理想情况下,结果应如下所示:

enter image description here

数据量将改变,因此单词“ Report:”不会每次都出现在109行中。

这是我现在正在使用的代码,

Sub Trial()

Set myRange = ActiveDocument.Content
myRange.Find.Execute FindText:="Report:", _
    Forward:=True
If myRange.Find.Found = True Then
    myRange.SetRange (myRange.End + 1), ActiveDocument.Content.End
    myRange.Delete
End If
End Sub

但是,它给了我

运行时错误“ 424”

1 个答案:

答案 0 :(得分:1)

尝试一下:

Option Explicit
Sub ReportKiller()
    Dim Report As String, r As Range, rKill As Range
    Report = "Report"
    Set r = Cells.Find(Report, after:=Cells(1, 1))
    If Not r Is Nothing Then
        Set rKill = Range(r, r.End(xlDown))
        rKill.EntireRow.Delete
    End If
End Sub

它将从 Report 单元格向下删除所有工作表内容。