我在excel表中有数据。在该表中,为新行插入了手动中断。 我想删除所有新行字符并将所有内容放在一行中。
我该怎么做?
我尝试选择列并在查找文本框下的替换中,我按下了ctrl + j并在替换中,我进入了一个空格。但是excel显示没有数据匹配替换。
请假设如何删除excel文件中的手动中断?
答案 0 :(得分:1)
如果使用 ALT-ENTER 插入手动中断,那么这个微小的宏将用空格替换它们:
Sub qwerty()
Cells.Replace Chr(10), " "
End Sub
答案 1 :(得分:0)
快速而肮脏的方法是将文件保存为文本文件,然后使用grep等实用程序或在word / wordpad / sublimetext / textmate中打开,并在EOL字符上进行全局替换
答案 2 :(得分:0)
删除所有换行符并只留下一行。选择单元格或单元格范围并运行宏。
Sub RemoveLineBreaks()
Application.ScreenUpdating = False
Dim rngCell As Range
Dim strOldVal As String
Dim strNewVal As String
For Each rngCell In Selection
If rngCell.HasFormula = False Then
strOldVal = rngCell.Value
strNewVal = strOldVal
Debug.Print rngCell.Address
Do
strNewVal = Replace(strNewVal, vbLf, " ")
If strNewVal = strOldVal Then Exit Do
strOldVal = strNewVal
Loop
If rngCell.Value <> strNewVal Then
rngCell = strNewVal
End If
End If
rngCell.Value = Application.Trim(rngCell.Value)
Next rngCell
Application.ScreenUpdating = True
End Sub