我想使用VBA进行以下操作:1)在我的Excel工作表中找到单词“ Report:”(我知道单词“ Report:”在工作表中只会出现一次); 2)删除此单元格下面的所有内容(包括单词“ Report”)
因此,理想情况下,结果应如下所示:
数据量将改变,因此单词“ 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”
答案 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 单元格向下删除所有工作表内容。