Вот UDF, который работает аналогично функции TRIM на листе, но позволяет указать символ для обрезки:
Option Explicit
Function trimCHAR(ByVal S As String, char As String)
Dim RE As Object
Dim I As Long
Set RE = CreateObject("vbscript.regexp")
With RE
.Global = True
.MultiLine = True
'need to do separately, otherwise multiple chars within will
'be removed
.Pattern = char & "$"
S = .Replace(S, "") 'Remove extra chars within or at end of string
.Pattern = "^" & char
S = .Replace(S, "") 'Remove extra chars at start of string
End With
trimCHAR = S
End Function
В вашей ситуации вы можете использовать его следующим образом:
=trimCHAR(cell_ref,CHAR(10))
ИЛИ вы можете использовать его как часть макроса, который повторяет все обрабатываемые ячейки.
Идея для этого возникла из функции Text.Trim
Power Query, которая работает только в начале и в концестроки, но позволяет указать любую символьную строку;наряду с адаптацией этого Кен Пульс , который добавляет функцию TRIM функции рабочего листа, заменяя последовательные "символы" в строке только одним.