Trim удаляет только начальные и конечные пробелы в начале и конце вашей строки.Простыми решениями будут:
Public Function TrmSpace(RemoveSpace As String) As String
RemoveSpace = Replace(RemoveSpace, " ", " ")
RemoveSpace = Replace(RemoveSpace, " ", " ")
RemoveSpace = Replace(RemoveSpace, " ", " ")
RemoveSpace = Replace(RemoveSpace, " th", "th")
RemoveSpace = Replace(RemoveSpace, " TH", "th")
TrmSpace = RemoveSpace
End Function
Это позволит убрать пробелы до восьми пробелов.Если в ваших данных есть действительные символы табуляции, а не пробелы, вам нужно заменить "" на vbTab & vbTab & vbTab & vbTab.
Одна строка кода для «сжатия» любого количества повторяющихся пробеловк одному пробелу и другому, чтобы убрать начальный пробел для th
независимо от регистра, тем самым уменьшая вышеупомянутое значение до этого:
Public Function TrmSpace(RemoveSpace As String) As String
TrmSpace = Replace$(Replace$(Replace$(RemoveSpace, Chr$(32), Chr$(32) & Chr$(22)), _
Chr$(22) & Chr$(32), vbNullString), Chr$(22), vbNullString)
TrmSpace = Replace$(TrmSpace, " th", "th", , , vbTextCompare)
End Function