如何删除excel中的换行符

时间:2014-07-09 17:54:58

标签: excel

我在excel表中有数据。在该表中,为新行插入了手动中断。 我想删除所有新行字符并将所有内容放在一行中。

我该怎么做?

我尝试选择列并在查找文本框下的替换中,我按下了ctrl + j并在替换中,我进入了一个空格。但是excel显示没有数据匹配替换。

请假设如何删除excel文件中的手动中断?

3 个答案:

答案 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