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

Вход

Регистрация

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

 

= Мир MS Excel/Дробление текста по разделителям ЧИСЛО+ТОЧКА. - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Дробление текста по разделителям ЧИСЛО+ТОЧКА. (Формулы/Formulas)
Дробление текста по разделителям ЧИСЛО+ТОЧКА.
perven Дата: Воскресенье, 03.12.2017, 08:56 | Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 67
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Доброе утро, умудренные опытом мастера экселя.
Помогите с формулой.

Есть строка с текстом. Текст - в основном хаотический набор символов.
Этот текст требуется разделить на части - по особым разделителям.

Разделители здесь - это любое число с точкой после него и слово "ОТМЕТКА-".
Например разделителем здесь может быть "2." или "4." или слово "ОТМЕТКА-".
То, что идет после слова "ОТМЕТКА-" исключается из поиска.
К сообщению приложен файл: 078644.xls (36.0 Kb)
 
Ответить
СообщениеДоброе утро, умудренные опытом мастера экселя.
Помогите с формулой.

Есть строка с текстом. Текст - в основном хаотический набор символов.
Этот текст требуется разделить на части - по особым разделителям.

Разделители здесь - это любое число с точкой после него и слово "ОТМЕТКА-".
Например разделителем здесь может быть "2." или "4." или слово "ОТМЕТКА-".
То, что идет после слова "ОТМЕТКА-" исключается из поиска.

Автор - perven
Дата добавления - 03.12.2017 в 08:56
Nic70y Дата: Воскресенье, 03.12.2017, 12:04 | Сообщение № 2
Группа: Друзья
Ранг: Экселист
Сообщений: 8759
Репутация: 2273 ±
Замечаний: 0% ±

Excel 2010
строго по Вашему примеру
Код
=ПСТР(D$8;ПОИСК(СТРОКА(D1)-1&".";0&"."&D$8);ПОИСК(СТРОКА(D1)&".";ПОДСТАВИТЬ(D$8;"ОТМЕТКА";СТРОКА(D1)&"."))-ПОИСК(СТРОКА(D1)-1&".";0&"."&D$8))
К сообщению приложен файл: 4845498.xls (32.0 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщениестрого по Вашему примеру
Код
=ПСТР(D$8;ПОИСК(СТРОКА(D1)-1&".";0&"."&D$8);ПОИСК(СТРОКА(D1)&".";ПОДСТАВИТЬ(D$8;"ОТМЕТКА";СТРОКА(D1)&"."))-ПОИСК(СТРОКА(D1)-1&".";0&"."&D$8))

Автор - Nic70y
Дата добавления - 03.12.2017 в 12:04
perven Дата: Понедельник, 04.12.2017, 00:06 | Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 67
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Nic70y, это не совсем то.
Имеются ввиду не числа по возрастанию + точка.
А вообще любые числа + точка.

Например, если в вашем примере, вместо первого разделителя "1." - поставить разделитель "5." - то формула будет выдавать неверный результат.
К сообщению приложен файл: 4845498-.xls (36.5 Kb)
 
Ответить
СообщениеNic70y, это не совсем то.
Имеются ввиду не числа по возрастанию + точка.
А вообще любые числа + точка.

Например, если в вашем примере, вместо первого разделителя "1." - поставить разделитель "5." - то формула будет выдавать неверный результат.

Автор - perven
Дата добавления - 04.12.2017 в 00:06
buchlotnik Дата: Понедельник, 04.12.2017, 00:17 | Сообщение № 4
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация: 929 ±
Замечаний: 20% ±

2010, 2013, 2016 RUS / ENG
Цитата
если в вашем примере
это эпидемия что ли? perven, это Ваш пример, и вам чётко написали
Цитата
строго по Вашему примеру
- зачем вы выстроили числа по порядку, если на самом деле они идут как угодно? Где хотя бы парочка примеров этого как угодно? Каков вопрос - таков и ответ
 
Ответить
Сообщение
Цитата
если в вашем примере
это эпидемия что ли? perven, это Ваш пример, и вам чётко написали
Цитата
строго по Вашему примеру
- зачем вы выстроили числа по порядку, если на самом деле они идут как угодно? Где хотя бы парочка примеров этого как угодно? Каков вопрос - таков и ответ

Автор - buchlotnik
Дата добавления - 04.12.2017 в 00:17
perven Дата: Понедельник, 04.12.2017, 00:23 | Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 67
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
buchlotnik, ну я же написал в названии темы: "ЧИСЛО + ТОЧКА".
Я подумал, что это понятно.

Где хотя бы парочка примеров этого как угодно?

Вот прикрепил в предыдущем сообщении - уточняющий пример.


Сообщение отредактировал perven - Понедельник, 04.12.2017, 00:24
 
Ответить
Сообщениеbuchlotnik, ну я же написал в названии темы: "ЧИСЛО + ТОЧКА".
Я подумал, что это понятно.

Где хотя бы парочка примеров этого как угодно?

Вот прикрепил в предыдущем сообщении - уточняющий пример.

Автор - perven
Дата добавления - 04.12.2017 в 00:23
sboy Дата: Понедельник, 04.12.2017, 09:47 | Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 2566
Репутация: 724 ±
Замечаний: 0% ±

Excel 2010
Добрый день.
Вариант макросом, выделяем ячейку с текстом и жмем кнопку
[vba]
Код
Sub qwe()
    txt = Selection.Value
    txt = Left(txt, InStr(txt, "ОТМЕТКА-") - 1)
    With CreateObject("VBScript.RegExp")
        .Global = True
        .Pattern = "\d+\."
        txt = .Replace(txt, "яяяя")
    End With
    arr = Split(txt, "яяяя")
    Selection.Offset(3, 1).Resize(UBound(arr) + 1, 1) = Application.Transpose(arr)
End Sub
[/vba]
К сообщению приложен файл: 4375111.xls (47.5 Kb)


Яндекс: 410016850021169
 
Ответить
СообщениеДобрый день.
Вариант макросом, выделяем ячейку с текстом и жмем кнопку
[vba]
Код
Sub qwe()
    txt = Selection.Value
    txt = Left(txt, InStr(txt, "ОТМЕТКА-") - 1)
    With CreateObject("VBScript.RegExp")
        .Global = True
        .Pattern = "\d+\."
        txt = .Replace(txt, "яяяя")
    End With
    arr = Split(txt, "яяяя")
    Selection.Offset(3, 1).Resize(UBound(arr) + 1, 1) = Application.Transpose(arr)
End Sub
[/vba]

Автор - sboy
Дата добавления - 04.12.2017 в 09:47
Светлый Дата: Понедельник, 04.12.2017, 11:07 | Сообщение № 7
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация: 510 ±
Замечаний: 0% ±

Excel 2013, 2016
Или вариант формулой массива (Ctrl+Shift+Enter):
Код
=ЕСЛИОШИБКА(ИНДЕКС(ПСТР(ЗАМЕНИТЬ(D$8;ПОИСК("отметка";D$8);99;"");НАИМЕНЬШИЙ(ПОИСК(99-СТРОКА($1:$99)&".";"0."&D$8&99-СТРОКА($1:$99)&".");СТРОКА($1:$9));НАИМЕНЬШИЙ(ПОИСК(99-СТРОКА($1:$99)&".";D$8&99-СТРОКА($1:$99)&".");СТРОКА($1:$9))-НАИМЕНЬШИЙ(ПОИСК(99-СТРОКА($1:$99)&".";"0."&D$8&99-СТРОКА($1:$99)&".");СТРОКА($1:$9)));СТРОКА(C1));"")

Есть ошибка в формуле - если число перед точкой двухзначное, то в столбце результатов получится пустая строка.


Программировать проще, чем писать стихи.

Сообщение отредактировал Светлый - Понедельник, 04.12.2017, 14:14
 
Ответить
СообщениеИли вариант формулой массива (Ctrl+Shift+Enter):
Код
=ЕСЛИОШИБКА(ИНДЕКС(ПСТР(ЗАМЕНИТЬ(D$8;ПОИСК("отметка";D$8);99;"");НАИМЕНЬШИЙ(ПОИСК(99-СТРОКА($1:$99)&".";"0."&D$8&99-СТРОКА($1:$99)&".");СТРОКА($1:$9));НАИМЕНЬШИЙ(ПОИСК(99-СТРОКА($1:$99)&".";D$8&99-СТРОКА($1:$99)&".");СТРОКА($1:$9))-НАИМЕНЬШИЙ(ПОИСК(99-СТРОКА($1:$99)&".";"0."&D$8&99-СТРОКА($1:$99)&".");СТРОКА($1:$9)));СТРОКА(C1));"")

Есть ошибка в формуле - если число перед точкой двухзначное, то в столбце результатов получится пустая строка.

Автор - Светлый
Дата добавления - 04.12.2017 в 11:07
perven Дата: Понедельник, 04.12.2017, 20:36 | Сообщение № 8
Группа: Пользователи
Ранг: Участник
Сообщений: 67
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Светлый, вот эта формула - вроде работает.
Спасибо вам и всем, кто отвечал.
 
Ответить
СообщениеСветлый, вот эта формула - вроде работает.
Спасибо вам и всем, кто отвечал.

Автор - perven
Дата добавления - 04.12.2017 в 20:36
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Дробление текста по разделителям ЧИСЛО+ТОЧКА. (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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