基于名称清除excel单元格的内容
我想制作一个宏,可以根据名称删除多个单元格的内容。例如,我有一张表,其中有sheet1name1和sheet2name2,在另一张表中,我使用了sheet2name1和sheet2name2。可以编写宏吗?如果单元格名为“sheetname”,将删除哪些单元格的内容?星星应该指向数字基于名称清除excel单元格的内容,excel,excel-2010,vba,Excel,Excel 2010,Vba,我想制作一个宏,可以根据名称删除多个单元格的内容。例如,我有一张表,其中有sheet1name1和sheet2name2,在另一张表中,我使用了sheet2name1和sheet2name2。可以编写宏吗?如果单元格名为“sheetname”,将删除哪些单元格的内容?星星应该指向数字 Sub RemNamedRanges() Dim nm As Name On Error Resume Next For Each nm In ActiveW
Sub RemNamedRanges()
Dim nm As Name
On Error Resume Next
For Each nm In ActiveWorkbook.Names
nm.Delete
Next
On Error Goto 0
End Sub
这是要删除全部,但我只需要一些我前面提到的特定内容。这将为您指明正确的方向。更改
If
语句以匹配您需要的内容(不确定您是在查找Sheet1
,还是在工作簿中查找工作表名称)。是否在工作簿中循环
Sub RemNamedRanges()
Dim nm As Name
On Error Resume Next
For Each nm In ActiveWorkbook.Names
If nm.Name = ActiveSheet.Name Then
Range(nm).ClearContents
End If
Next
On Error GoTo 0
End Sub
InStr
应该能够确定字符串中是否有子字符串
For Each nm In ActiveWorkbook.Names
if cbool(instr(1, nm.name, "name", vbtextcompare)) then _
nm.Delete
Next
这应该是
范围(nm.name).ClearContents
?@Jeeped-它对我来说可以正常工作,但对范围(nm.name)也可以正常工作。
。哦,那就按一下键。我认为您可能没有将name对象转换为字符串。