Страницы: 1
RSS
удаление "пробелов" в значениях
 
Всем утра доброго!  
В большой таблице закрались ячейки следующего вида  
 
111555  
г.Москва  
ул.Петровская  
 
иными словами сделано через enter!  
можно как-нить разом привести в след. вид  
111555 г. Москва ул.Петровская (удаление лишних пробелов не помогает - их там нет(
 
А Вы загляните в формат ячейки. Там часом не стоит - переносить по словам? Если нет, тогда нужно удалять vbCrLf, vbLf. Это знаки переноса строки.
Я сам - дурнее всякого примера! ...
 
{quote}{login=dr1988}{date=31.05.2010 06:25}{thema=удаление "пробелов" в значениях}{post}Всем утра доброго!  
В большой таблице закрались ячейки следующего вида  
 
111555  
г.Москва  
ул.Петровская  
 
иными словами сделано через enter!  
можно как-нить разом привести в след. вид  
111555 г. Москва ул.Петровская (удаление лишних пробелов не помогает - их там нет({/post}{/quote}  
Макросом. A1:L33  - диапазон ячеек, в которых нужно это сделать.  
Sub  
Range("A1:L33").Select  
   With Selection  
       .HorizontalAlignment = xlGeneral  
       .VerticalAlignment = xlBottom  
       .WrapText = False  
       .Orientation = 0  
       .AddIndent = False  
       .IndentLevel = 0  
       .ShrinkToFit = False  
       .ReadingOrder = xlContext  
       .MergeCells = False  
   End With  
End Sub
 
А вот еще макрос по удалению переносов на всем листе:  
Sub wer()  
' Макрос записан 31.05.2010 (Sergey)  
   Cells.Replace What:=vbLf, Replacement:=" ", LookAt:=xlPart, SearchOrder _  
       :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False  
   Cells.Replace What:=vbCrLf, Replacement:=" ", LookAt:=xlPart, SearchOrder _  
       :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False  
End Sub
Я сам - дурнее всякого примера! ...
 
{quote}{login=KuklP}{date=31.05.2010 06:42}{thema=}{post}А вот еще макрос по удалению переносов на всем листе:  
Sub wer()  
' Макрос записан 31.05.2010 (Sergey)  
   Cells.Replace What:=vbLf, Replacement:=" ", LookAt:=xlPart, SearchOrder _  
       :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False  
   Cells.Replace What:=vbCrLf, Replacement:=" ", LookAt:=xlPart, SearchOrder _  
       :=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False  
End Sub{/post}{/quote}  
Почему-то не работает...???
 
Поставьте в любой ячейке посреди слова перенос(alt+Enter), а потом выполните макрос. Вместо переноса будет пробел.
Я сам - дурнее всякого примера! ...
 
Браво) хлоп-хлоп - мильон спасиб!!!
 
Vlad, отпишитесь - работает?
Я сам - дурнее всякого примера! ...
 
{quote}{login=KuklP}{date=31.05.2010 06:55}{thema=}{post}Поставьте в любой ячейке посреди слова перенос(alt+Enter), а потом выполните макрос. Вместо переноса будет пробел.{/post}{/quote}  
Не знаю почему, но не работает.  
См. пример.
 
Это Вы так прикалываетесь? Ваш пример.
Я сам - дурнее всякого примера! ...
 
Точнее, работает, но не до конца как-то.  
В строке формул да, переносится в одну строчку, но остаётся пробел.  
А в ячейке, у которой не было в формате галочки "Переносить по словам", эта галочка появляется и текст всё-равно отображается в две строчки, пока вручную не раздвинешь столбец.  
Надо в макросе как-то сделать, чтобы в ячейках формат не менялся.
 
{quote}{login=KuklP}{date=31.05.2010 07:18}{thema=}{post}Это Вы так прикалываетесь? Ваш пример.{/post}{/quote}  
А если Ваш и мой макрос объединить, получается то, что надо в любом случае, даже пробелов не остаётся  
Sub  
Cells.Replace What:=vbLf, Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False  
Cells.Replace What:=vbCrLf, Replacement:="", LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, ReplaceFormat:=False  
Cells.Select  
   With Selection  
       .HorizontalAlignment = xlGeneral  
       .VerticalAlignment = xlBottom  
       .WrapText = False  
       .Orientation = 0  
       .AddIndent = False  
       .IndentLevel = 0  
       .ShrinkToFit = False  
       .ReadingOrder = xlContext  
       .MergeCells = False  
   End With  
       Range("A1").Select  
End Sub
 
Так пробел я специально оставил. Вопрос был:  
 
111555  
г.Москва  
ул.Петровская  
иными словами сделано через enter!  
можно как-нить разом привести в след. вид  
111555 г. Москва ул.Петровская  
 
Тут без пробелов нельзя. В Ваш макрос бы еще  
.Columns.AutoFit  
И будет подгонка по ширине текста.
Я сам - дурнее всякого примера! ...
 
Не то?
Страницы: 1
Читают тему
Loading...