Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Разбить текст на строки - Мир MS Excel

Старая форма входа
  • Страница 1 из 2
  • 1
  • 2
  • »
Модератор форума: китин  
Мир MS Excel » Работа и общение » Мозговой штурм » Разбить текст на строки
Разбить текст на строки
Хороший вопрос для М.Ш.?
Russel Дата: Среда, 17.09.2014, 08:32 | Сообщение № 1
Группа: Друзья
Ранг: Старожил
Сообщений: 1394
Репутация: 320 ±
Замечаний: 0% ±

Excel 2010
Вопрос навеяло этой темой.
Имеется длинный текст в ячейке. Необходимо разбить его на отдельные строки указанной максимальной длины без переноса слов.
У меня пока решения нет ;)
К сообщению приложен файл: trimtext.xls (28.0 Kb)


QIWI 9173973973

Сообщение отредактировал Russel - Среда, 17.09.2014, 08:33
 
Ответить
СообщениеВопрос навеяло этой темой.
Имеется длинный текст в ячейке. Необходимо разбить его на отдельные строки указанной максимальной длины без переноса слов.
У меня пока решения нет ;)

Автор - Russel
Дата добавления - 17.09.2014 в 08:32
Nic70y Дата: Среда, 17.09.2014, 10:18 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 8761
Репутация: 2273 ±
Замечаний: 0% ±

Excel 2010
массивная без {=} 263


ЮMoney 41001841029809
 
Ответить
Сообщениемассивная без {=} 263

Автор - Nic70y
Дата добавления - 17.09.2014 в 10:18
Rioran Дата: Среда, 17.09.2014, 10:26 | Сообщение № 3
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Russel, классная тема! =)

Моё решение 136 знаков, разумеется массивное. ТС, прошу подтвердить решение, пароль от файла отправил в личку.
К сообщению приложен файл: TrimText_Pass_2.xls (32.0 Kb)


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеRussel, классная тема! =)

Моё решение 136 знаков, разумеется массивное. ТС, прошу подтвердить решение, пароль от файла отправил в личку.

Автор - Rioran
Дата добавления - 17.09.2014 в 10:26
Serge_007 Дата: Среда, 17.09.2014, 10:35 | Сообщение № 4
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
СообщениеПохожая тема: Автоматический перенос текста на другую строку

Автор - Serge_007
Дата добавления - 17.09.2014 в 10:35
Russel Дата: Среда, 17.09.2014, 10:36 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1394
Репутация: 320 ±
Замечаний: 0% ±

Excel 2010
Rioran, супер! yes
Единственное "но" - работает только с указанным ограничением в 45 символов, а хотелось бы получить возможность менять значение в В2 и получать новый результат.


QIWI 9173973973

Сообщение отредактировал Russel - Среда, 17.09.2014, 10:39
 
Ответить
СообщениеRioran, супер! yes
Единственное "но" - работает только с указанным ограничением в 45 символов, а хотелось бы получить возможность менять значение в В2 и получать новый результат.

Автор - Russel
Дата добавления - 17.09.2014 в 10:36
Rioran Дата: Среда, 17.09.2014, 10:39 | Сообщение № 6
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Russel, спасибо, пойду выпью бокал чая за свою первую добротную массивную формулу yahoo


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеRussel, спасибо, пойду выпью бокал чая за свою первую добротную массивную формулу yahoo

Автор - Rioran
Дата добавления - 17.09.2014 в 10:39
Russel Дата: Среда, 17.09.2014, 10:41 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1394
Репутация: 320 ±
Замечаний: 0% ±

Excel 2010
Serge_007, да, надо больше пользоваться поиском! (((


QIWI 9173973973
 
Ответить
СообщениеSerge_007, да, надо больше пользоваться поиском! (((

Автор - Russel
Дата добавления - 17.09.2014 в 10:41
MCH Дата: Среда, 17.09.2014, 11:16 | Сообщение № 8
Группа: Админы
Ранг: Старожил
Сообщений: 2003
Репутация: 751 ±
Замечаний: ±

Единственное "но" - работает только с указанным ограничением в 45 символов, а хотелось бы получить возможность менять значение в В2 и получать новый результат

130 134 с "=", но без проверки на ошибку (если вдруг есть слово, которое длиннее чем максимальное значение)
в B2 можно менять значения, то формулы пересчитываются

если значение из B2 перенести в другое место (и в B2 будет пустая ячейка), то формулу можно сократить


Сообщение отредактировал MCH - Среда, 17.09.2014, 11:21
 
Ответить
Сообщение
Единственное "но" - работает только с указанным ограничением в 45 символов, а хотелось бы получить возможность менять значение в В2 и получать новый результат

130 134 с "=", но без проверки на ошибку (если вдруг есть слово, которое длиннее чем максимальное значение)
в B2 можно менять значения, то формулы пересчитываются

если значение из B2 перенести в другое место (и в B2 будет пустая ячейка), то формулу можно сократить

Автор - MCH
Дата добавления - 17.09.2014 в 11:16
Rioran Дата: Среда, 17.09.2014, 11:19 | Сообщение № 9
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
Russel, добавил формуле пластичности, теперь реагирует на ячейку с количеством символов. Длина стала 157, пароль от файла тот же. То, что нужно?

[offtop]Если заменить одну функцию, будет 149.[/offtop]
К сообщению приложен файл: TrimText_Pass_4.xls (35.0 Kb)


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279


Сообщение отредактировал Rioran - Среда, 17.09.2014, 11:33
 
Ответить
СообщениеRussel, добавил формуле пластичности, теперь реагирует на ячейку с количеством символов. Длина стала 157, пароль от файла тот же. То, что нужно?

[offtop]Если заменить одну функцию, будет 149.[/offtop]

Автор - Rioran
Дата добавления - 17.09.2014 в 11:19
AlexM Дата: Воскресенье, 21.09.2014, 10:46 | Сообщение № 10
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4491
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
197 без "=" массивная, столбец С не используется.
Далее как у Михаила.
Проверки на ошибку нет, В2 можно менять, если ограничение из В2 перенести в другое место, то формула будет короче.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение197 без "=" массивная, столбец С не используется.
Далее как у Михаила.
Проверки на ошибку нет, В2 можно менять, если ограничение из В2 перенести в другое место, то формула будет короче.

Автор - AlexM
Дата добавления - 21.09.2014 в 10:46
Nic70y Дата: Воскресенье, 21.09.2014, 16:50 | Сообщение № 11
Группа: Друзья
Ранг: Экселист
Сообщений: 8761
Репутация: 2273 ±
Замечаний: 0% ±

Excel 2010
186 с махлежом, массивная
столбец С не используется

это я считаю(л) поумолчанию.


ЮMoney 41001841029809
 
Ответить
Сообщение186 с махлежом, массивная
столбец С не используется

это я считаю(л) поумолчанию.

Автор - Nic70y
Дата добавления - 21.09.2014 в 16:50
MCH Дата: Понедельник, 22.09.2014, 17:18 | Сообщение № 12
Группа: Админы
Ранг: Старожил
Сообщений: 2003
Репутация: 751 ±
Замечаний: ±

вскрываемся или ждем следующего понедельника?
 
Ответить
Сообщениевскрываемся или ждем следующего понедельника?

Автор - MCH
Дата добавления - 22.09.2014 в 17:18
Nic70y Дата: Понедельник, 22.09.2014, 17:50 | Сообщение № 13
Группа: Друзья
Ранг: Экселист
Сообщений: 8761
Репутация: 2273 ±
Замечаний: 0% ±

Excel 2010
Код
=ПСТР(B$1;СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+1;ПОИСКПОЗ(B$2+СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2);--ПОДСТАВИТЬ(ПСТР(B$1&" ";СТРОКА($1:$999);1);" ";СТРОКА($1:$999));1)-СУММ(ДЛСТР(B$2:B2))+ДЛСТР(B$2))
да чего ждать.


ЮMoney 41001841029809
 
Ответить
Сообщение
Код
=ПСТР(B$1;СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+1;ПОИСКПОЗ(B$2+СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2);--ПОДСТАВИТЬ(ПСТР(B$1&" ";СТРОКА($1:$999);1);" ";СТРОКА($1:$999));1)-СУММ(ДЛСТР(B$2:B2))+ДЛСТР(B$2))
да чего ждать.

Автор - Nic70y
Дата добавления - 22.09.2014 в 17:50
MCH Дата: Понедельник, 22.09.2014, 20:26 | Сообщение № 14
Группа: Админы
Ранг: Старожил
Сообщений: 2003
Репутация: 751 ±
Замечаний: ±

раз вскрылись, то выкладываю свою формулу
Код
=ПСТР(B$1;СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+1;ПОИСКПОЗ(2;1/(ПСТР(B$1&" ";СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+СТРОКА(СМЕЩ(A$1;;;B$2));1)=" ")))
 
Ответить
Сообщениераз вскрылись, то выкладываю свою формулу
Код
=ПСТР(B$1;СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+1;ПОИСКПОЗ(2;1/(ПСТР(B$1&" ";СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+СТРОКА(СМЕЩ(A$1;;;B$2));1)=" ")))

Автор - MCH
Дата добавления - 22.09.2014 в 20:26
Rioran Дата: Понедельник, 22.09.2014, 21:10 | Сообщение № 15
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
И я своё. Пароль от файла немного скромен, сори =)

Rio_Is_Proud_Of_This_Very_Solution

Формула там такая, на 157 знаков.

Код
=ПСТР(B$1&" ";СУММ(ДЛСТР(G$2:G2))+1;НАИБОЛЬШИЙ((ПСТР(ПСТР(B$1&" ";СУММ(ДЛСТР(G$2:G2))+1;B$2);СТРОКА(ДВССЫЛ("A1:A"&B$2));1)=" ")*СТРОКА(ДВССЫЛ("A1:A"&B$2));1))

Старую тему даже не открывал. Мне интересно было самому попробовать сделать. ТСу спасибо, что откопал такой интересный вопрос. Иногда дубли бывает полезными, имхо.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279


Сообщение отредактировал Rioran - Понедельник, 22.09.2014, 21:13
 
Ответить
СообщениеИ я своё. Пароль от файла немного скромен, сори =)

Rio_Is_Proud_Of_This_Very_Solution

Формула там такая, на 157 знаков.

Код
=ПСТР(B$1&" ";СУММ(ДЛСТР(G$2:G2))+1;НАИБОЛЬШИЙ((ПСТР(ПСТР(B$1&" ";СУММ(ДЛСТР(G$2:G2))+1;B$2);СТРОКА(ДВССЫЛ("A1:A"&B$2));1)=" ")*СТРОКА(ДВССЫЛ("A1:A"&B$2));1))

Старую тему даже не открывал. Мне интересно было самому попробовать сделать. ТСу спасибо, что откопал такой интересный вопрос. Иногда дубли бывает полезными, имхо.

Автор - Rioran
Дата добавления - 22.09.2014 в 21:10
AlexM Дата: Понедельник, 22.09.2014, 22:23 | Сообщение № 16
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4491
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
Код
=ЛЕВБ(ЗАМЕНИТЬ(B$1;1;СУММ(ДЛСТР(B$2:B2)*ЕТЕКСТ(B$2:B2)+1)-1;);МАКС((ПСТР(ЗАМЕНИТЬ(B$1&" ";1;СУММ(ДЛСТР(B$2:B2)*ЕТЕКСТ(B$2:B2)+1)-1;);СТРОКА(ДВССЫЛ("1:"&B$2));1)=" ")*СТРОКА(ДВССЫЛ("1:"&B$2))-1))
193 знака.
MCH, Каждая строка заканчивается пробелом. Наверно так не правильно.
Rioran, первая строка потеряла два первых знака, если формулу использовать в файле ТС.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
Сообщение
Код
=ЛЕВБ(ЗАМЕНИТЬ(B$1;1;СУММ(ДЛСТР(B$2:B2)*ЕТЕКСТ(B$2:B2)+1)-1;);МАКС((ПСТР(ЗАМЕНИТЬ(B$1&" ";1;СУММ(ДЛСТР(B$2:B2)*ЕТЕКСТ(B$2:B2)+1)-1;);СТРОКА(ДВССЫЛ("1:"&B$2));1)=" ")*СТРОКА(ДВССЫЛ("1:"&B$2))-1))
193 знака.
MCH, Каждая строка заканчивается пробелом. Наверно так не правильно.
Rioran, первая строка потеряла два первых знака, если формулу использовать в файле ТС.

Автор - AlexM
Дата добавления - 22.09.2014 в 22:23
Rioran Дата: Вторник, 23.09.2014, 00:16 | Сообщение № 17
Группа: Авторы
Ранг: Ветеран
Сообщений: 903
Репутация: 290 ±
Замечаний: 0% ±

Excel 2013
AlexM, Тогда прошу воспользоваться моим файлом. Боюсь, я мог чего-то передвинуть, когда делал.


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеAlexM, Тогда прошу воспользоваться моим файлом. Боюсь, я мог чего-то передвинуть, когда делал.

Автор - Rioran
Дата добавления - 23.09.2014 в 00:16
AlexM Дата: Вторник, 23.09.2014, 08:05 | Сообщение № 18
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4491
Репутация: 1115 ±
Замечаний: 0% ±

Excel 2003
Rioran, Тоже все строки в конце содержат пробел и перед первой строкой должна быть пустая ячейка.
В задании перед первой строкой число (максимальная длина строки).
Nic70y, В конце каждой строки есть пробел.



Номер мобильного модема (без голосовой связи)
9269171249 МегаФон, Московский регион.
 
Ответить
СообщениеRioran, Тоже все строки в конце содержат пробел и перед первой строкой должна быть пустая ячейка.
В задании перед первой строкой число (максимальная длина строки).
Nic70y, В конце каждой строки есть пробел.

Автор - AlexM
Дата добавления - 23.09.2014 в 08:05
Nic70y Дата: Вторник, 23.09.2014, 08:38 | Сообщение № 19
Группа: Друзья
Ранг: Экселист
Сообщений: 8761
Репутация: 2273 ±
Замечаний: 0% ±

Excel 2010
Nic70y, В конце каждой строки есть пробел
я предупреждал:
186 с махлежом
без него у меня 218:
Код
=СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПСТР(B$1&" ";СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+СТРОКА(A1);B$2);" ";ПОВТОР(" ";99);СУММ(--(ПСТР(ПСТР(B$1&" ";СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+СТРОКА(A1);B$2);СТРОКА(ДВССЫЛ("1:"&B$2));1)=" ")));B$2))


ЮMoney 41001841029809
 
Ответить
Сообщение
Nic70y, В конце каждой строки есть пробел
я предупреждал:
186 с махлежом
без него у меня 218:
Код
=СЖПРОБЕЛЫ(ЛЕВБ(ПОДСТАВИТЬ(ПСТР(B$1&" ";СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+СТРОКА(A1);B$2);" ";ПОВТОР(" ";99);СУММ(--(ПСТР(ПСТР(B$1&" ";СУММ(ДЛСТР(B$2:B2))-ДЛСТР(B$2)+СТРОКА(A1);B$2);СТРОКА(ДВССЫЛ("1:"&B$2));1)=" ")));B$2))

Автор - Nic70y
Дата добавления - 23.09.2014 в 08:38
Russel Дата: Вторник, 23.09.2014, 09:43 | Сообщение № 20
Группа: Друзья
Ранг: Старожил
Сообщений: 1394
Репутация: 320 ±
Замечаний: 0% ±

Excel 2010
MCH, Каждая строка заканчивается пробелом. Наверно так не правильно.

В условиях об этом я не упомянул, ибо неважно. А вообще, с пробелами лучше - можно сделать простую проверку на соблюдение длины фразы (сумма длин новых строк = длине исходной строки).

Подведем итоги:

1 МСН 133 (поменял в формуле A$1 на B$1 чтобы ссылки были только на два исходные ячейки)
2 Rioran 157 (не смог настроить чтобы нормально работала в моем файле :D )
3 Nic70y 186
4 AlexM 193

Прилагаю файл.
К сообщению приложен файл: trimtext.xlsx (12.5 Kb)


QIWI 9173973973
 
Ответить
Сообщение
MCH, Каждая строка заканчивается пробелом. Наверно так не правильно.

В условиях об этом я не упомянул, ибо неважно. А вообще, с пробелами лучше - можно сделать простую проверку на соблюдение длины фразы (сумма длин новых строк = длине исходной строки).

Подведем итоги:

1 МСН 133 (поменял в формуле A$1 на B$1 чтобы ссылки были только на два исходные ячейки)
2 Rioran 157 (не смог настроить чтобы нормально работала в моем файле :D )
3 Nic70y 186
4 AlexM 193

Прилагаю файл.

Автор - Russel
Дата добавления - 23.09.2014 в 09:43
Мир MS Excel » Работа и общение » Мозговой штурм » Разбить текст на строки
  • Страница 1 из 2
  • 1
  • 2
  • »
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!