删除换行符,返回托架以及Excel单元格中的所有前导空格

时间:2013-04-26 22:20:43

标签: excel vba

我不知道发生了什么,但是我的单元格包含了一个似乎是回车的单元格。我尝试过TRIM()CLEAN()=SUBSTITUTE(A1,CHAR(10),"")和一些宏来删除这些字符。

删除这些字符以使单元格处于活动状态的唯一方法是,单击最后一个字符附近的“删除”,然后单击“输入”。

有什么我想念的吗?有没有办法以编程方式执行此操作?

3 个答案:

答案 0 :(得分:14)

以下宏将使用Trim()Clean()函数删除所有不可打印的字符以及开始和结束空格:

Sub Clean_and_Trim_Cells()
    Application.ScreenUpdating = False
    Application.Calculation = xlCalculationManual
    Dim s As String
    For Each c In ActiveSheet.UsedRange
        s = c.Value
        If Trim(Application.Clean(s)) <> s Then
            s = Trim(Application.Clean(s))
            c.Value = s
        End If
    Next
    Application.ScreenUpdating = True
    Application.Calculation = xlCalculationAutomatic
End Sub

答案 1 :(得分:1)

更简单的解决方案是找到替换:用于查找按下alt和数字010同时(在10个键盘上)然后用空格替换。

只需突出显示包含滑架的单元格,即可将其作为批量替换。

答案 2 :(得分:1)

我试过了

ws.Cells(i, j) = Replace(ws.Cells(i, j), Chr(13), "")

并成功。