Страницы: 1
RSS
Удаление всех пробелов из цены макросом
 
Здравствуйте, помогите удалить макросом абсолютно все пробелы из столбца A2:A, тип данных случайный! Перепробовал все, что мог, не удаляет только последний пробел в конце 2 550 000 р. Реализовать нужно в виде кнопки
Изменено: Laemafin - 27.08.2018 08:01:25
 
Код
ActiveCell = Replace(ActiveCell, " ", "")


 
Юрий М, А можно это в виде кнопки сделать, я в макросах не понимаю, мне нужно чтоб кнопку нажал и в столбце A2:A все очистилось. Я попробовал этот код вставить в кнопку не заработало :(
 
Можно. А нужно именно макросом? Ctrl+H не помогает?
 
Юрий М, только макросом,в виде кнопки, поиск и замена не помогает, сжатие не помогает, пробовал из различных тем макросы, тоже не помогает!
Изменено: Laemafin - 27.08.2018 06:54:01
 
Странно - у меня замена сработала: выделил столбец, Ctrl+H, в верхнее поле написал пробел, нижнее поле оставил пустым - Заменить всё.
А вот и макрос на кнопку:
Код
Sub qqq()
Dim LastRow As Long
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To LastRow
        Cells(i, 1) = Replace(Cells(i, 1), " ", "")
    Next
End Sub



 
Юрий М, Макрос везде удалил пробелы, а у 2 550 000 р. нет, почему то только у этого числа не удаляет последний пробел. Этот пробел мне весь мозг уже вынес. Прикладываю результат
 
Скриншот там серым видно курсор, который показывает что есть пробел
 
У Вас там неразрывный пробел (код символа 160).
Код
Sub qqq()
Dim LastRow As Long
    LastRow = Cells(Rows.Count, 1).End(xlUp).Row
    For i = 2 To LastRow
        Cells(i, 1) = Replace(Cells(i, 1), " ", "")
        Cells(i, 1) = Replace(Cells(i, 1), Chr(160), "")
    Next
End Sub


 
Можно его скопировать из строки формул и Ctrl+H - в верхнее поле вставить скопированное.
 
Юрий М, Блин, реально помогло! Спасибо огромное! Вчера вечер мучился, сегодня все утро, че за хрень такая думаю. Первый раз слышу о таком пробеле, по мимо обычного и неразрывного пробела еще какие нибудь существуют? А то попадется какой нибудь еще и печаль будет!
Изменено: Laemafin - 27.08.2018 07:10:43
 
Других пока не встречал. А этот из Word )
 
Юрий М,Еще раз спасибо  :)  
 
еще вариант UDF и макроса,кнопки test и повтор

 
Код
Sub test()
     Dim z, t$, i&: z = Range("A3:A" & Range("A" & Rows.Count).End(xlUp).Row).Value
 With CreateObject("VBScript.RegExp"): .Global = True: .Pattern = "\s+"
    For i = 1 To UBound(z): t = z(i, 1):t = Replace(t, Chr(160), "") : z(i, 1) = .Replace(t, ""): Next
   Range("A3").Resize(UBound(z), 1).Value = z
 End With
End Sub
Изменено: кузя1972 - 27.08.2018 12:39:30
 
Код
Sub ClearSpaces()
  Range("A2:A" & Rows.Count).Replace " ", "", xlPart
End Sub
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
Страницы: 1
Наверх