Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 17.02.2013, 19:34   #1
madace
Пользователь
 
Регистрация: 15.10.2009
Сообщений: 15
По умолчанию удаление пробелов в конце строки

Доброго дня вам, знатоки!
1.в столбце1 есть текст
2.в столбце2 необходимо вывести текст ячеек слева, но без пробелов, который могут быть в конце строки
3.я пытаюсь построить формулу, но пока получается обрезать только последний пробел, а их может быть несколько подряд
4. TRIM не подходит, тк мне не надо сжимать пробелы в середине текста
5.как найти последний НЕпробел в строке?
6.хочу создать формулу на листе а не с помощью VBA
выручите, плиз, просветите!
madace вне форума Ответить с цитированием
Старый 17.02.2013, 20:40   #2
blackarrow
Пользователь
 
Регистрация: 14.05.2011
Сообщений: 37
По умолчанию

В вашем случае идеально подходит функция VBA - rtrim, которая убирает все пробелы справа.
Это конечно, ваше дело, желать решения именно формулами листа, но не могу не сказать, что с тех пор, как я начал пользоваться vba, все эти формулы из месива букв, ссылок, скобок, точек и запятых, вызывают просто отвращение.
blackarrow вне форума Ответить с цитированием
Старый 17.02.2013, 22:41   #3
ikki_pf
Форумчанин
 
Регистрация: 25.02.2012
Сообщений: 166
По умолчанию

чисто из любопытства
Код:
=МАКС((ПСТР(A1;СТРОКА($1:$99);1)<>" ")*СТРОКА($1:$99)*(ДЛСТР(A1)>СТРОКА($1:$99)))
формула массива.
(если ваши строки могут быть длиннее 99 символов, поменяйте константу на нужную. можно с запасом)
ikki_pf вне форума Ответить с цитированием
Старый 17.02.2013, 23:17   #4
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

ikki_pf, все гораздо проще:
замечательная функция СЖПРОБЕЛЫ - удалит ВСЕ стартовые и концевые пробелы с данных
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 17.02.2013, 23:37   #5
blackarrow
Пользователь
 
Регистрация: 14.05.2011
Сообщений: 37
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
ikki_pf, все гораздо проще:
замечательная функция СЖПРОБЕЛЫ - удалит ВСЕ стартовые и концевые пробелы с данных
Она также уберет комбинации из 2-х и более пробелов в середине текста. Это ведь тот же метод trim, от которого ТС отказался в п.4 своего поста.
blackarrow вне форума Ответить с цитированием
Старый 17.02.2013, 23:45   #6
ikki_pf
Форумчанин
 
Регистрация: 25.02.2012
Сообщений: 166
По умолчанию

Цитата:
Сообщение от IgorGO Посмотреть сообщение
ikki_pf, все гораздо проще:
замечательная функция СЖПРОБЕЛЫ - удалит ВСЕ стартовые и концевые пробелы с данных
автору темы это не нужно.
ikki_pf вне форума Ответить с цитированием
Старый 18.02.2013, 07:09   #7
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Функция VBA Trim(), в отличии от функции рабочего листа Application.Trim() (СЖПРОБЕЛЫ) как раз и отличается тем, что удаляет пробелы только справа и слева от текста, не трогая пробелы внутри текста. Поэтому, я бы использовал пользовательскую функцию, которую с успехом можно применять в ячейках рабочего листа:
Код:
Function myTrim(Cell As Range) As String
    myTrim = Trim(Cell)
End Function
Если требуется удалить пробелы только справа, оставив лидирующие, то вместо Trim() можно использовать RTrim().
Чем шире угол зрения, тем он тупее.

Последний раз редактировалось SAS888; 18.02.2013 в 07:15.
SAS888 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Удаление пробелов внутри строки Maxx Microsoft Office Excel 22 11.11.2016 01:26
Удаление пробелов из строки.... paravoz1k Общие вопросы Delphi 1 13.08.2011 15:21
Аналог функции Trim-удаление лишних пробелов в начале и в конце передаваемой строки GULINA Помощь студентам 6 23.05.2009 15:07
Удаление пробелов Иван 883 Помощь студентам 1 20.04.2009 22:23
Строки(удаление пробелов). C language SuccEssoR Помощь студентам 4 15.01.2009 17:13