如何在excel中用宏删除包含特定文字的行

如上图,我要删掉所有的标头、空白行等包含特定文字的行,
如需要删掉:表2-1,分部分项工程量清单综合单价分析表
:工程名称行
投标人(盖章) 这几行,让表格能自动拼接起来

第一步:首先明确要筛选的关键词:我以“政治学与行政学专业”为例,可报考“政治学、法学类、文史类、文科类、不限专业”等几类,下面我们就通过筛选一下,包括这几个类别的专业。

第二步:编写函数

在当前数据区域的最后,找一空列。我们将在这一空列中标识出符合我们条件的列。=IF(OR(COUNTIF(L2,"*政治*"),COUNTIF(L2,"*法学类*"),COUNTIF(L2,"*文*"),COUNTIF(L2,"*不限*"),COUNTIF(L2,"")),"符合","不符合")

注意关键词越少,则搜索的面越大。所以将第一步中的“政治学”精简成“政治”,这样政治理论等专业也就可以包括在了筛选范围内。

符合筛选条件的该空列的单元格将填上“符合”,反之“不符合”

第三步:将该函数粘贴在空列的第一行,下拉填充到数据的最后一行。

按当前列排序,将不符合的删除掉,就剩下符合的了。其它政治面貌等条件可以加到上面条件中一次筛选,也可以用自动筛选功能实现,就不赘述了。

按当前列排序,将不符合的删除掉,就剩下符合的了。其它政治面貌等条件可以加到上面条件中一次筛选,也可以用自动筛选功能实现

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-10-01

估计不行,说给笨办法,你用条件格式给符号删除条件的自动加上颜色,然后手动删除


又看了下,用函数VLOOKUP更好

不知道你的编号是按什么编的,统一下比较好,或者要保留的数据前面的序号每行都填上,用来排序。


你编号应该是独一无二的吧,就是说B列不会重复出现。

是的话,把B列复制到一个新表,把汉字编号替换成空白,排序,只保留所有编号。

第一个表格把序号A列在第一个表格剪切到B列,

有了编号,你第一个表格内的数据都能用VLOOKUP算出来,算到第2个表格。


你可以给我给文件,我做好给你看下,看了你就明白了,很简单

你放百度网盘,留个邮箱,我现在做好给你发过去。



第3行怎么填:

想根据序号计算第一个编号后第几列就填几,如编号是1,序号就是2,名称就是3,单位就是4,


单击左下角那个有关该函数的帮助,有微软的解释和例子,你看下就知道了,说的不好,你实践实践

第2个回答  2013-10-01
ALT+F11 粘帖下面代码 运行此宏即可

Sub 删除指定内容行()
Dim fincell As Range
On Error Resume Next
Do
With ActiveSheet.Rows("3:65536")
Set findcell = .Cells.Find("分析表", LookAt:=xlPart)
findcell.EntireRow.Delete
Set findcell = .Cells.Find("土建工程", LookAt:=xlPart)
findcell.EntireRow.Delete
Set findcell = .Cells.Find("投标人", LookAt:=xlPart)
findcell.EntireRow.Delete
End With
Loop Until findcell Is Nothing
End Sub本回答被提问者和网友采纳
第3个回答  2013-09-30
换一个思路吧,查找M列,如果不为空且不为0,则选中这一行,复制并粘到另一个表中即可。
如果你希望我能直接帮你做好,私信加QQ。
相似回答