Страницы: 1
RSS
Как удалить пробел в дробном числе
 
Добрый день!

Как удалить пробелы в дробных числах (после запятой - 1, 5л | 10, 5 | 0, 55л), но сохранить пробелы после запятой в перечислениях свойств товара (D=95, H=215мм | D=10, 5, H=22см | D=95, H=92мм)? Всё в одной ячейке.

Банка; стекло; 1, 5л; D=95, H=215мм; прозр.
Банка; стекло; 2л; D=10, 5, H=22см; прозр.
Банка; стекло; 0, 55л; D=95, H=92мм; прозр.

Заменой естественно все пробелы удаляются. (
 
Код
Function change$(t$)
    With CreateObject("VBScript.RegExp")
        .Pattern = "(\d+\,)(\s)(\d+)"
        change = .Replace(t, "$1$3")
    End With
End Function
Изменено: buchlotnik - 15.02.2020 23:25:02
Соблюдение правил форума не освобождает от модераторского произвола
 
Если только буква H:
=ПОДСТАВИТЬ(ПОДСТАВИТЬ(ПОДСТАВИТЬ(A2;", H";",,H");", ";",");",,";", ")
 
buchlotnik, спасибо! Но у меня при вставке функции появляется ошибка: function call on left-hand side of assignment must.

vikttur, спасибо! С буквой Н работает отлично. К сожалению, в разных товарах не только буква Н. К тому же эта комбинация (запятая, пробел, буква) в некоторых ячейках встречается дважды или трижды, например:

Контейнер; 2, 05л; H=95, L=185, B=185мм; белый, прозр.

Увидел только сейчас. Приношу извинения за неточность формулировки вопроса.
 
Массивно
=REPLACE(A1;MIN(IFERROR(FIND(", "&ROW($1:$10)-1;A1)+1;1=0));1;)
Если конечно одно дробно, а не несколько.
Изменено: БМВ - 15.02.2020 16:02:32
По вопросам из тем форума, личку не читаю.
 
Forestwarden,
В коде от buchlotnik кавычки не той системы
Код
change = .Replace(t, "$1$3")
 
Kuzmich,спасибо! Зашло! )
 
БМВ, Спасибо!
 
Цитата
Kuzmich написал:
кавычки не той системы
паттерны тоже  ;)  , что-то я вчера погорячился, так оно попроще будет:
Код
Function change2$(t$)
    With CreateObject("VBScript.RegExp")
        .Pattern = ",\s(?=\d)"
        change2 = .Replace(t, ",")
    End With
End Function
Изменено: buchlotnik - 16.02.2020 01:06:47
Соблюдение правил форума не освобождает от модераторского произвола
Страницы: 1
Наверх