您好,欢迎访问三七文档
当前位置:首页 > IT计算机/网络 > 数据库 > excel中查找和删除的VB程序
SubFindandDelete()''FindandDelete''程序中绿色字是注释,便于非程序员阅读,程序运行时不起作用,不对程序结果产生影响!'本程序适用对象:根据用户输入的查找内容,查找到对应的单元格,把该单元格所在的列删除。'定义需要使用的变量DimKAsIntegerDimfoundAsRangeDimheadersAsRangeDimintLastColumAsIntegerDimkeywordAsStringDimdeletedAsInteger'激活excel的第一张工作表作为程序处理对象,excel左下角的sheet1、sheet2...处,从左至右数依次为第一张、第二张表Worksheets(1).Activate'计算要处理的excel中有内容的单元格列数Setheaders=Application.ActiveSheet.UsedRange.ColumnsintLastColum=headers.Count'上步单元格列数赋值给计数变量intLastColumn'提示用户输入要查找的关键字keyword=Application.InputBox(prompt:=请输入要删除列的关键字,Type:=2)'让用户再次确认输入的关键字是否有误res=MsgBox(确定要删除包含[&keyword&]的所有列吗?该操作不可撤销。,vbOKCancel)'确认无误后继续运行后续程序段,否则退出程序IfNotres=vbOKThenEndEndIf'控制循环查找的次数ForK=intLastColumTo1Step-1'把输入的关键字与excel中单元格内容进行对比Setfound=headers.Columns(K).Find(What:=keyword)'如果对比发现二者内容一样IfNotfoundIsNothingThen'选择查找内容所在单元格的那一列。特别注意:如果含有内容的单元格“行数”不是21,请把本条语句中的“21”改为其他数字即可!Range(Cells(1,K),Cells(21,K)).Select'删除该列有内容的单元格Selection.DeleteShift:=xlToLeft'统计删除的列数deleted=deleted+1EndIfNextK'查找循环结束处'提示用户成功删除含有关键字的多少列MsgBox(成功删除&deleted&列)EndSub
本文标题:excel中查找和删除的VB程序
链接地址:https://www.777doc.com/doc-4612350 .html