Excel单元格内删除空白行
的有关信息介绍如下:我们都知道,在键入的单元格内按下【Alt+Enter】组合键即可换行,如果没有输入内容并继续换行,那将会留下空白的行。如下图所示,要把单元格里面的空白行删除,手动删除确实很费劲,是否有捷径呢,答案是肯定的,方法如下。
打开Excel表格后,功能区里面依次点击的【查找和选择】、【替换】调出“查找和替换”会话框,或者使用【Ctrl+H】组合键调出“查找和替换”会话框。
换行字符输入和替换:
(1)将光标放在“查找内容”输入框里面,按住键盘上面趴拒沫的【Alt】键,之后依次按下数字区的【1】、【10】键即可输入第一个换行符。同理,再按住键盘上面的【Alt】键,然后依次按下数字区的【1】、【10】键输入第二个换行符。
(2)将光标放在“替换为”输入框里面,按住键盘上面的【Alt】键,再依次按下数光诉字区的【1】、【10】键输入一个换行符。
(3)点击【全部替换】。
回到Excel工作表界面,将会发现很多的空白行已经被替换,也难免会有一些意外,那就是有的第一行的空白行没有被替换,别急,方法还是有的。
保存Excel工作薄之后把工作薄关闭,再重新打开,按下【Ctrl+H】组合键调出“查找和替换”会话框。(如果不想关闭工作表,可以分别在“查找内容”和替换为”输入框多按几次【BackSpace】、【Delete】键以清除已输入的换行符)
(1)在“查找内容”输入框里面输入一个换行符;
(2)在“替换为”输入框里面输入一个与文档内容均不相同的字符或字符串(如:小于号(<));
(3)点击【全部替换】。
回到工作矿之表界面,似乎有点傻眼了,换行符都被替换成了小于号(<)。不用担心,好戏刚刚开始。
接下来就是在空白单元格里面输入替换公式,如:F2单元格里面输入公式=IF(MID(A2,1,1)="<",REPLACE(A2,1,1,),A2),之后向左、向下拖动复制。
公式释义:如果第一个字符是小于号(<),那么它(第一个字符)将会被替换成空白(后面的字符不变),否则就按照单元格原样显示。
复制使用公式替换的单元格,将它覆盖到原数据上面,即:在“粘贴选项”里面选择“值”,粘贴完成后把含有公式的单元格删除。
保存工作薄,关闭工作薄后重新打开。
按下【Ctrl+H】组合键调出“查找和替换”会话框。
(1)在“查找内容”输入框里面输入小于号(<);
(2)在“替换为”输入框里面输入一个换行符;
(3)点击【全部替换】。
单元格里面的空白行删除完成。
在Excel表格上面点击【开发工具】、【Visual Basic】调出VBA编辑器,或者使用【Alt+F11】组合键调出VBA编辑器。
在VBA编辑器的Sheet1代码框里面输入以下VBA程序,然后按下【F5】键运行程序。
Sub ReplaceChr()
Dim i1, i2, i3, i5, str1, str2
Application.ScreenUpdating = False '关闭屏幕显示更新
Set mysheet1 = ThisWorkbook.Worksheets("Sheet1")
str1 = Chr(10) & Chr(10) '连续两个换行符
str2 = Chr(10)
For i3 = 1 To 10 '循环执行10次
For i1 = 2 To 1000 '从第二行到1000行
For i2 = 1 To 11 '从第一列到11列
If mysheet1.Cells(i1, i2) <> "" Then '如果单元格不为空白,则
mysheet1.Cells(i1, i2) = Replace(mysheet1.Cells(i1, i2), str1, Chr(10)) '替换换行符
i5 = InStr(1, mysheet1.Cells(i1, i2), Chr(10)) '获取换行符的位置
If i5 = 1 Then '如果换行符是第一个,则
i5 = 0
mysheet1.Cells(i1, i2) = Replace(mysheet1.Cells(i1, i2), str2, "", 1, 1) '替换换行符
End If
End If
Next
Next
Next
Application.ScreenUpdating = True '恢复屏幕显示更新
End Sub
回到Sheet1的工作表界面,将会看到程序的运行结果。