我有一个从A1到T1的1000行和20列的Excel Sheet 1。该范围内的每个单元格都有一些数据,通常是一个或两个单词。 在Sheet2中,A1列中有1000个值的数据列表。基于另一个表中的列表内容的Excel清除单元格
我正在使用VBA脚本查找Sheet1中Sheet2列表中的单词,并清除找到的单元格的值。
我现在有一个VBA脚本,它只对Sheet1的A1列起作用,它只删除行。这里的脚本:
Sub DeleteEmails()
Dim rList As Range
Dim rCrit As Range
With Worksheets("Sheet1")
.Range("A1").Insert shift:=xlDown: .Range("A1").Value = "Temp Header"
Set rList = .Range("A1", .Cells(Rows.Count, 1).End(xlUp))
End With
With Worksheets("Sheet2")
.Range("A1").Insert shift:=xlDown: .Range("A1").Value = "Temp Header"
Set rCrit = .Range("A1", .Cells(Rows.Count, 1).End(xlUp))
End With
rList.AdvancedFilter Action:=xlFilterInPlace, CriteriaRange:=rCrit, Unique:=False
rList.Offset(1).SpecialCells(xlCellTypeVisible).Delete shift:=xlUp
Worksheets("Sheet1").ShowAllData
rList(1).Delete shift:=xlUp: rCrit(1).Delete shift:=xlUp
Set rList = Nothing: Set rCrit = Nothing
End Sub
任何人都可以帮助我吗?我需要清除值,而不是行删除,这应该适用于Sheet1的所有列,而不仅仅是A1。
使用'.Find'请参阅此链接http://www.siddharthrout.com/2011/07/14/find-and-findnext-in-excel-vba/ –
@基于该值的CamSpy,是否要清除该单元格或删除整行或只删除该单元格? – bonCodigo
@bonCodigo我想要清除单元格,以保留其他列/行的序列 – CamSpy