如何批量删除Excel单元格中的首行内容?含H2-H20实例及MID函数问题
批量删除Excel单元格内容中的首行方法
方法一:公式法(无需宏)
单元格内的换行符在Excel里对应CHAR(10),通过定位第一个换行符的位置,截取其后的所有内容就能实现删除首行的效果:
- 在旁边空白列(比如I2单元格)输入公式:
=MID(H2,FIND(CHAR(10),H2)+1,LEN(H2)) - 下拉填充公式到I20,此时I列会显示H列对应单元格去掉首行后的内容
- 选中I2:I20右键复制,再选中H2:H20右键选择「粘贴值」,完成后可删除I列辅助内容
如果部分单元格首行后有连续换行,可加TRIM函数优化,避免开头出现多余空格:
=TRIM(MID(H2,FIND(CHAR(10),H2)+1,LEN(H2)))
方法二:VBA宏法(直接修改原单元格)
不想用辅助列的话,用VBA能直接批量处理:
- 按下
Alt + F11打开VBA编辑器 - 右键左侧工作簿名称,选择「插入」→「模块」
- 粘贴以下代码:
Sub DeleteFirstLineInCells() Dim rng As Range Dim cell As Range Set rng = ThisWorkbook.ActiveSheet.Range("H2:H20") For Each cell In rng If InStr(cell.Value, Chr(10)) > 0 Then cell.Value = Mid(cell.Value, InStr(cell.Value, Chr(10)) + 1) End If Next cell End Sub - 按下
F5运行宏,H2:H20的单元格就会直接去掉首行内容
内容的提问来源于stack exchange,提问作者Sekiroweb
相关产品推荐
相关产品推荐

