首页 > 解决方案 > 从 VBA 末尾删除回车(alt+enter)

问题描述

代码 :

Sub removeEndingCarriageReturns()
    Dim Rng As Range
    Dim inputRange As Range
    On Error Resume Next
    Set inputRange = Application.Selection
    Set inputRange = Application.InputBox("Range", "Remove Ending Carriage Returns", inputRange.Address, Type:=8)
    For Each Rng In inputRange
        Rng.Value = Replace(Rng.Value, Chr(10), " ")
    Next
End Sub

这可以完美地将每个回车转换为空格(“”)。我想要的是,代码应该只转换最后的回车。我怎样才能找到结束回车?

选定范围:
在此处输入图像描述

单元格B3B6在末尾有回车,我想使用 vba 代码将其删除。

标签: vbaexcel

解决方案


只需检查最后一个字符是否为 CR,如果是则将其删除。

If Right$(Rng.Value, 1) = Chr(10) Then 
    Rng.Value = Left$(Rng.Value, Len(Rng.Value) - 1)
End If

推荐阅读