Страницы: 1
RSS
Макросом менять точку на запятую
 
Добрый день уважаемые. Написал простой код, который должно заменяет точку на запятую в столбце I:I. Макрос работает неправильно (по моему мнению конечно) и не даёт желаемый результат. Помогите разобраться, пожалуйсто. Файл и код прилагаю.
Код
Sub ReplOne()
Dim lr As Long

lr = Cells(Rows.Count, "B").End(xlUp).Row

Range("I3:I" & lr).Replace what:=".", replacement:=","

End Sub
 
Если нужно именно разобраться, то тут неплохо написано: excel-vba.ru/forum/index.php?topic=5574.0
 
Вроде работает.
Код
Sub ReplOne()
Dim lr As Long

lr = Cells(Rows.Count, "B").End(xlUp).Row
Range("I3:I" & lr).Replace What:=" ", Replacement:=""
Range("I3:I" & lr).Replace What:=".", Replacement:="."

End Sub
 
МатросНаЗебре, Спасибо большое. Действительно работает теперь.
Только, можете обяснить эту строку в коде:
Код
Range("I3:I" & lr).Replace What:=" ", Replacement:=""
 
Эта строка убирает пробелы. Например, в ячейке I29 приведено значение "59 345.806". При замене точки на точку не произойдёт преобразование в число из-за содержащегося пробела. Предварительное удаление пробела решает проблему.
 
МатросНаЗебре, Спасибо за пояснение. Удачи Вам
Страницы: 1
Читают тему
Наверх