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

Есть такой код
Код
Sub RemoveCarriageReturns() 
   Dim MyRange As Range, repl 
    
   repl = "Chr(10)" 
   Application.ScreenUpdating = False 
   Application.Calculation = xlCalculationManual 

   For Each MyRange In ActiveSheet.UsedRange 
       If 0 < InStr(MyRange, Chr(10)) Then 
           MyRange = Replace(MyRange, repl, Chr(10)) 
       End If 
   Next 

   Application.ScreenUpdating = True 
   Application.Calculation = xlCalculationAutomatic 
End Sub 

Он чистит все переносы, а мне надо только те, которые по 2 штуки подряд. Как это сделать?
 
Замените в коде на  это    repl = Chr(10)&Chr(10) .
как с этим  repl = "Chr(10)"  работало-  не понятно  
Изменено: БМВ - 19.01.2018 23:48:54
По вопросам из тем форума, личку не читаю.
 
Пробовал, как ты советовал, ничего не вышло.
 
Цитата
БМВ написал:
Оформите код корректно выделить и   в меню
и тогда уж приложите файл с примером.
По вопросам из тем форума, личку не читаю.
 
Не понимаю о чем вы, может сами напишите пример?
 
Цитата
NeoBog написал: Не понимаю о чем вы
Для понимания Вам необходимо ознакомиться с Правилами форума (п.2.3 в частности)
Согласие есть продукт при полном непротивлении сторон
 
Файл большой 500 кб, так что извините я этого делать не буду
 
Вас просят приложить файл-ПРИМЕР. Разницу чувствуете?
Цитата
NeoBog написал: так что извините я этого делать не буду
 8-0 Как!? А как же Вам помочь!? Просим, просим !!!
Согласие есть продукт при полном непротивлении сторон
 
NeoBog,  В данном случае, ваш код не мог работать и то что указано в #2 делает его работоспособным, ну можено еще вот так repl = vbLf & vbLf . Но возможно вся проблема не в коде а в тех данных которые есть у Вас и которых у нас нет, для этого обычно пример делает тот , у кого проблема, а не тот, у кого её нет.
Ну и последнее все что выше в одну команду укладывается
Код
    Cells.Replace What:=vbLf & vbLf, Replacement:="", LookAt:=xlPart, SearchOrder:= _
        xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
По вопросам из тем форума, личку не читаю.
 
БМВ, есть минимум 3 варианта двойного переноса строки/каретки. Без примера непонятно, действительно ли там две vbLf (она же Chr(10)) подряд.

И таки да, вопрос про перенос строки, а процедура называется "удаление возврата каретки"… что удаляем-то?
Изменено: Irregular Expression - 19.01.2018 22:52:18
 
Irregular Expression, я тоже ошибаюсь, но
Цитата
БМВ написал:
Но возможно вся проблема не в коде а в тех данных которые есть у Вас и которых у нас нет,
Если вы о сочетаниях всевозможных комбинаций 13 и10  то естесвенно я об этом подумал,  но хотелось бы дождаться от ТС активных действий
По вопросам из тем форума, личку не читаю.
 
Цитата
БМВ написал: дождаться от ТС активных действий
Цитата
NeoBog написал: извините я этого делать не буду
Недождетесь...
Согласие есть продукт при полном непротивлении сторон
 
даа, ТС нынче незговорчивый пошел. Странно, что еще не наехал на нас, не стал в нежелании помочь обвинять.
По вопросам из тем форума, личку не читаю.
 
Друзья! Сделал как вы просили, пришлось много листов удалять, короче вот файл, жду активной помощи
 
Код
Sub RemoveCarriageReturns()
 With Cells
    .Replace What:=Chr(13), Replacement:="", LookAt:=xlPart, SearchOrder:= _
        xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
    .Replace What:=vbLf & vbLf, Replacement:="", LookAt:=xlPart, SearchOrder:= _
        xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False
End With
End Sub
По вопросам из тем форума, личку не читаю.
 
Большое спасибо друг! Респект тебе и удачи прибольшой!
 
И Вам спасибо, что пошли на уговоры и, и пример приложили, и  код правильно оформили. Этап 2. Учимся хорошему тону. Не слишкои ли рано на ТЫ переходить? Аж с #3.  
Изменено: БМВ - 20.01.2018 07:43:18
По вопросам из тем форума, личку не читаю.
Страницы: 1
Читают тему
Наверх