配色: 字号:
如何批量删除word文档里的空白行
2012-03-11 | 阅:  转:  |  分享 
  
如何批量删除word文档里的空白行

2008-4-1221:14:00

如何批量删除word文档里的空白行[推荐方案]高效解决方案勾选通配符查找内容:^13{2,}替换为:^p全部替换此替换是把2至255个相邻的段落标记替换为一个,也就是删除多余的段落标记(也就是空行)![说明]重复几次(一般一次是不是就够了吧?哪有连续256个空白行的?),直到替换处数为1,因为最后一个空行无法如此删除,点击“查找下一处”,过去看看,手工删吧。

在做此替换之前,最好先做一下准备工作,这样会删的更彻底:点击:编辑-替换查找内容:^w^13替换为:^p全部替换此替换是把段落标记前面多余的空白部分删除!再次点击:编辑-替换查找内容:^13^w替换为:^p全部替换此替换是把段落开始处多余的空白部分删除!如果空行不是太多,也可以这样解决:

点击:编辑-替换查找内容:^w^13替换为:^13全部替换此替换是把段落标记前面多余的空格删除!

然后:查找内容:^13^13替换为:^p全部替换此替换是把两个相邻的段落标记替换为一个,也就是删除多余的段落标记(也就是空行)![说明]^w指空白区域(包括空格),^13表示段落标记,也可以用^p表示。重复几次,直到替换处数为1,因为最后一个空行无法如此删除,点击“查找下一处”,过去看看,手工删吧。Subblankdel()

ForEachiInActiveDocument.Paragraphs

a=i.Range.End

b=i.Range.Start

Ifa-b=1Then

i.Range.Delete

m=m+1

EndIf

Nexti

MsgBox"共删除空白段落"&m&"个"

EndSub笔者利用Excel程序从一文本文件中导入数据后,发现导入后的Excel工作表中杂乱地分布着许多空白行(见图4),这样既影响使用又很不美观。经过一段时间摸索后,终于找到了在Excel中快速删除空白行的几种方法,下面就介绍给大家。

筛选法1.选中工作表中包括全部数据的单元格区域(这里是A1至C23单元格区域)。2.选择“数据”菜单中“筛选”项目下的“自动筛选”命令,此时自动筛选箭头就出现在筛选清单中的列标题的右侧,单击A列标题(编号列)右侧的自动筛选箭头,然后从下拉列表中单击“非空白”选项,这时可以看到Excel自动将所有空白行隐藏起来,只显示非空白行数据。3.由于使用自动筛选功能后,只是将符合筛选条件的行显示出来,并未将工作表中空白行进行删除,为了得到不包括空白行的工作表,我们需再进行下面的操作。⑴将经过自动筛选后的工作表(Sheet1)选中,单击工具栏上的“复制”按钮。⑵单击Sheet2工作表标签,打开工作簿中另一张工作表,然后单击工具栏上的“粘贴”按钮,这样,在Sheet2中得到的工作表就不再包括空白行了。注意,使用此方法时,用户在选择自动筛选的列标题时,必须选择列数据最完整的列进行筛选,否则就会出现错误筛选结果。

排序法1.选中工作表A1单元格,从“插入”菜单中选择“列”命令,在工作表首行插入一空白列,此时工作表中原A列就变为B列了。2.在A1单元格中输入数字“1”,然后用鼠标右键拖动填充柄至A23单元格,松开鼠标右键,在弹出的右键菜单中选择“序列”命令,打开“序列”对话框,在“类型”中选择“等差序列”,点击“确定”按钮返回工作表,此时在工作表中A列填充了从1至23的等差序列数据。3.从工具菜单中选择“排序”命令,先将“列表”类型选择为“无标题行”,然后在“主要关键字”下拉列表中选择“按列B”升序方式排序,点击“确定”按钮进行排序。4.执行排序后,可以看到所有的空白行全部排列到数据行的下方位置了,用鼠标将不包括空白行在内的单元格区域选中,然后从工具菜单中选择“排序”命令,先将“列表”类型选择为“无标题行”,然后在“主要关键字”下拉列表中选择“按列A”升序方式排序,点击“确定”按钮进行排序。5.选中A列,然后点击鼠标右键,从右键菜单中选择“删除”命令,这时就可以得到一个格式正确且没有空白行的工作表了。

使用“宏”删除空白行在Excel中,“宏”功能是相当强大的,利用“宏”我们可以完成许多Excel菜单功能之外的特殊功能,下面就介绍如何利用“宏”功能实现在工作表中删除空白行的操作方法。1.启动Excel程序,选择“工具”菜单中“宏”项目下的“宏”命令,进入“宏”对话框,在“宏名”输入框中输入宏名称“删除空白行”,然后单击“创建”按钮,进入“宏”编辑程序界面。2.在“宏”编辑窗口中,在“Sub删除空白行()”语句下依次录入如下语句:Dimi&

Dimx&

Dimk&x=0

Fori=1ToRange(Cells(1,1),ActiveSheet.UsedRange).Rows.Count

IfApplication.WorksheetFunction.CountBlank(Rows(i).EntireRow)<>256Thenx=x+1

Nextik=1

Do

IfApplication.WorksheetFunction.CountBlank(Rows(k).EntireRow)=256ThenRows(k).Delete

Ifx=Range(Cells(1,1),ActiveSheet.UsedRange).Rows.CountThenExitSub

IfApplication.WorksheetFunction.CountBlank(Rows(k).EntireRow)<>256Then

k=k+1

EndIf

Loop

EndSub3.完成上述宏命令语句录入工作后,单击“保存”按钮将创建的宏进行保存,然后将宏编辑窗口关闭,返回Excel程序界面。4.当需要对工作表进行删除空白行操作时,用户先将需要进行删除空白行操作的工作表打开,选择“工具”菜单中“宏”项目下的“宏”命令,进入“宏”对话框,然后从“宏”列表窗口中选择“删除空白行”,再单击“执行”按钮即可将工作表中所有的空白行删除,非常方便。5.如果用户需要经常对工作表进行删除空白行的操作,还可以将此“删除空白行”做成工具按钮添加到常用工具栏中。操作方法是选择“工具”菜单下的“自定义”命令,打开“自定义”窗口,单击“命令”标签,在“类别”窗口中选择“宏”,在右边的“命令”窗口中找到刚才创建的“删除空白行”宏,选择它,按住鼠标左键不放将它拖至常用工具栏中,此外你还可以修改该宏按钮的名称和按钮图标格式。以后需要时,只要点击此按钮即可将工作表中的所有空白行删除。





献花(0)
+1
(本文系小 猪首藏)