5

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

删除这些字符的唯一方法是激活单元格,单击最后一个字符附近的删除,然后单击 Enter。

有什么我想念的吗?有没有办法以编程方式做到这一点?

4

3 回答 3

14

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

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
于 2013-04-28T03:46:40.577 回答
2

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

您可以通过突出显示包含回车符的单元格来批量替换。

于 2014-07-24T21:09:51.003 回答
1

我努力了

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

并成功。

于 2014-09-27T22:15:20.940 回答