Извлечение текста из диапазона
dmitrijaltman8
Дата: Среда, 11.08.2021, 17:43 |
Сообщение № 1
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
Добрый день. Помогите извлечь текст из диапазона - по ключевому слову. Должны выводится только тот текст, у которого по левую сторону - стоит скобка ( ... а по правую сторону стоит другая скобка ). (То есть ключевое слово стоит внутри скобок). Это слово записано в ячейку "N3"
Добрый день. Помогите извлечь текст из диапазона - по ключевому слову. Должны выводится только тот текст, у которого по левую сторону - стоит скобка ( ... а по правую сторону стоит другая скобка ). (То есть ключевое слово стоит внутри скобок). Это слово записано в ячейку "N3" dmitrijaltman8
Ответить
Сообщение Добрый день. Помогите извлечь текст из диапазона - по ключевому слову. Должны выводится только тот текст, у которого по левую сторону - стоит скобка ( ... а по правую сторону стоит другая скобка ). (То есть ключевое слово стоит внутри скобок). Это слово записано в ячейку "N3" Автор - dmitrijaltman8 Дата добавления - 11.08.2021 в 17:43
bmv98rus
Дата: Среда, 11.08.2021, 18:36 |
Сообщение № 2
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4108
Репутация:
768
±
Замечаний:
0% ±
Excel 2013/2016
а нет желания ответить на вопрос ?
Замечательный Временно просто медведь , процентов на 20 .
Ответить
Сообщение а нет желания ответить на вопрос ? Автор - bmv98rus Дата добавления - 11.08.2021 в 18:36
dmitrijaltman8
Дата: Среда, 11.08.2021, 19:34 |
Сообщение № 3
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
bmv98rus, я не понял чего вы хотите. Почему-то ваша формула выдавала не тот результат, который нужен был. А почему - не знаю.
bmv98rus, я не понял чего вы хотите. Почему-то ваша формула выдавала не тот результат, который нужен был. А почему - не знаю. dmitrijaltman8
Ответить
Сообщение bmv98rus, я не понял чего вы хотите. Почему-то ваша формула выдавала не тот результат, который нужен был. А почему - не знаю. Автор - dmitrijaltman8 Дата добавления - 11.08.2021 в 19:34
прохожий2019
Дата: Среда, 11.08.2021, 20:39 |
Сообщение № 4
Группа: Проверенные
Ранг: Старожил
Сообщений: 1244
Репутация:
317
±
Замечаний:
0% ±
365 Beta Channel
а кусок моей формулы (с ФИЛЬТР.XML) чем не устроил? Она работает в 2016
а кусок моей формулы (с ФИЛЬТР.XML) чем не устроил? Она работает в 2016 прохожий2019
Ответить
Сообщение а кусок моей формулы (с ФИЛЬТР.XML) чем не устроил? Она работает в 2016 Автор - прохожий2019 Дата добавления - 11.08.2021 в 20:39
dmitrijaltman8
Дата: Среда, 11.08.2021, 20:54 |
Сообщение № 5
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
прохожий2019, да тоже там не те результаты. Не все нужные строки находит. Я в той теме писал об этом.
прохожий2019, да тоже там не те результаты. Не все нужные строки находит. Я в той теме писал об этом. dmitrijaltman8
Ответить
Сообщение прохожий2019, да тоже там не те результаты. Не все нужные строки находит. Я в той теме писал об этом. Автор - dmitrijaltman8 Дата добавления - 11.08.2021 в 20:54
bmv98rus
Дата: Среда, 11.08.2021, 20:57 |
Сообщение № 6
Группа: Друзья
Ранг: Участник клуба
Сообщений: 4108
Репутация:
768
±
Замечаний:
0% ±
Excel 2013/2016
Я в той теме писал об этом.
а надо не писать а приложить пример с теми, которые обработаны не верно. Ну всего вам Светлого.
Я в той теме писал об этом.
а надо не писать а приложить пример с теми, которые обработаны не верно. Ну всего вам Светлого.bmv98rus
Замечательный Временно просто медведь , процентов на 20 .
Ответить
Сообщение Я в той теме писал об этом.
а надо не писать а приложить пример с теми, которые обработаны не верно. Ну всего вам Светлого.Автор - bmv98rus Дата добавления - 11.08.2021 в 20:57
прохожий2019
Дата: Среда, 11.08.2021, 21:22 |
Сообщение № 7
Группа: Проверенные
Ранг: Старожил
Сообщений: 1244
Репутация:
317
±
Замечаний:
0% ±
365 Beta Channel
Не все нужные строки находит
вот специально ту тему перечитал - и могу обоснованно заявить - "первый раз слышу"; остановились только на том, что ФИЛЬТР() выдает вам ИМЯ; все, больше не обсуждалось, да и не уверен, что вы пробовали фрагмент применить. Всего вам Светлого
Не все нужные строки находит
вот специально ту тему перечитал - и могу обоснованно заявить - "первый раз слышу"; остановились только на том, что ФИЛЬТР() выдает вам ИМЯ; все, больше не обсуждалось, да и не уверен, что вы пробовали фрагмент применить. Всего вам Светлогопрохожий2019
Ответить
Сообщение Не все нужные строки находит
вот специально ту тему перечитал - и могу обоснованно заявить - "первый раз слышу"; остановились только на том, что ФИЛЬТР() выдает вам ИМЯ; все, больше не обсуждалось, да и не уверен, что вы пробовали фрагмент применить. Всего вам СветлогоАвтор - прохожий2019 Дата добавления - 11.08.2021 в 21:22
Светлый
Дата: Среда, 11.08.2021, 21:37 |
Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Как я понял, это намёк на меня. В зелёных ячейках формула, которая вытягивает из двух столбцов все данные в скобках после образца. *Ой, неправильно понял. Образец внутри скобок должен быть.
Как я понял, это намёк на меня. В зелёных ячейках формула, которая вытягивает из двух столбцов все данные в скобках после образца. *Ой, неправильно понял. Образец внутри скобок должен быть. Светлый
Программировать проще, чем писать стихи.
Сообщение отредактировал Светлый - Среда, 11.08.2021, 21:46
Ответить
Сообщение Как я понял, это намёк на меня. В зелёных ячейках формула, которая вытягивает из двух столбцов все данные в скобках после образца. *Ой, неправильно понял. Образец внутри скобок должен быть. Автор - Светлый Дата добавления - 11.08.2021 в 21:37
dmitrijaltman8
Дата: Среда, 11.08.2021, 22:32 |
Сообщение № 9
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
Светлый, почему-то не работает Поставил слово для поиска "-ТЕКСТ" но формула ничего не нашла. Хотя в диапазоне - есть несколько записей с таким словом.
Светлый, почему-то не работает Поставил слово для поиска "-ТЕКСТ" но формула ничего не нашла. Хотя в диапазоне - есть несколько записей с таким словом. dmitrijaltman8
Ответить
Сообщение Светлый, почему-то не работает Поставил слово для поиска "-ТЕКСТ" но формула ничего не нашла. Хотя в диапазоне - есть несколько записей с таким словом. Автор - dmitrijaltman8 Дата добавления - 11.08.2021 в 22:32
Светлый
Дата: Среда, 11.08.2021, 23:05 |
Сообщение № 10
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
В голубых ячейках решение, когда слово внутри скобок.Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(ЛЕВБ(ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));"(";ПОВТОР(" ";99)&"(");99));"")
Но может быть сбой, если образец в строке встречается дважды.
В голубых ячейках решение, когда слово внутри скобок.Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(ЛЕВБ(ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));"(";ПОВТОР(" ";99)&"(");99));"")
Но может быть сбой, если образец в строке встречается дважды. Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение В голубых ячейках решение, когда слово внутри скобок.Код
=ЕСЛИОШИБКА(СЖПРОБЕЛЫ(ПРАВБ(ПОДСТАВИТЬ(ЛЕВБ(ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D:D&E:E;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));"(";ПОВТОР(" ";99)&"(");99));"")
Но может быть сбой, если образец в строке встречается дважды. Автор - Светлый Дата добавления - 11.08.2021 в 23:05
dmitrijaltman8
Дата: Среда, 11.08.2021, 23:24 |
Сообщение № 11
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
Светлый, сейчас в синем столбце отображается следующее: (23487v y7 673t2-ТЕКСТ,) Там отсутствует текст который идет от крайней левой скобки - до ближайшей запятой или начала строки. То есть нужно чтобы было записано: 311 09dg(23487v y7 673t2-ТЕКСТ,) сперва три числа объединенные, затем текст идущий от левой скобки до первой запятой влево (или до начала строки - влево - если запятых нет), а потом текст со скобками.
Светлый, сейчас в синем столбце отображается следующее: (23487v y7 673t2-ТЕКСТ,) Там отсутствует текст который идет от крайней левой скобки - до ближайшей запятой или начала строки. То есть нужно чтобы было записано: 311 09dg(23487v y7 673t2-ТЕКСТ,) сперва три числа объединенные, затем текст идущий от левой скобки до первой запятой влево (или до начала строки - влево - если запятых нет), а потом текст со скобками. dmitrijaltman8
Сообщение отредактировал dmitrijaltman8 - Среда, 11.08.2021, 23:44
Ответить
Сообщение Светлый, сейчас в синем столбце отображается следующее: (23487v y7 673t2-ТЕКСТ,) Там отсутствует текст который идет от крайней левой скобки - до ближайшей запятой или начала строки. То есть нужно чтобы было записано: 311 09dg(23487v y7 673t2-ТЕКСТ,) сперва три числа объединенные, затем текст идущий от левой скобки до первой запятой влево (или до начала строки - влево - если запятых нет), а потом текст со скобками. Автор - dmitrijaltman8 Дата добавления - 11.08.2021 в 23:24
dmitrijaltman8
Дата: Четверг, 12.08.2021, 11:03 |
Сообщение № 12
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
Светлый, сама формула считает очень медленно. У меня 8000 строк считала 10 минут. Если текст в записи длинный - то формула обрезает его с левой стороны. Можно сделать, как в моем файле - использовать формулу для промежуточных столбцов K4 и L4? Так быстрее считает.
Светлый, сама формула считает очень медленно. У меня 8000 строк считала 10 минут. Если текст в записи длинный - то формула обрезает его с левой стороны. Можно сделать, как в моем файле - использовать формулу для промежуточных столбцов K4 и L4? Так быстрее считает. dmitrijaltman8
Ответить
Сообщение Светлый, сама формула считает очень медленно. У меня 8000 строк считала 10 минут. Если текст в записи длинный - то формула обрезает его с левой стороны. Можно сделать, как в моем файле - использовать формулу для промежуточных столбцов K4 и L4? Так быстрее считает. Автор - dmitrijaltman8 Дата добавления - 12.08.2021 в 11:03
Светлый
Дата: Четверг, 12.08.2021, 11:57 |
Сообщение № 13
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Можно такую формулу:Код
=ЕСЛИОШИБКА(ИНДЕКС(A$1:A$2000&B$1:B$2000&C$1:C$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)))&ПСТР(ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));МАКС((ЕСЛИ(ПСТР(","&ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));СТОЛБЕЦ(A:GR);1)=",";СТОЛБЕЦ(A:GR))<МАКС((ПСТР(ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));СТОЛБЕЦ(A:GR);1)="(")*СТОЛБЕЦ(A:GR)))*СТОЛБЕЦ(A:GR));99);"")
А можно с дополнительными ячейками. В файле.
Можно такую формулу:Код
=ЕСЛИОШИБКА(ИНДЕКС(A$1:A$2000&B$1:B$2000&C$1:C$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)))&ПСТР(ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));МАКС((ЕСЛИ(ПСТР(","&ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));СТОЛБЕЦ(A:GR);1)=",";СТОЛБЕЦ(A:GR))<МАКС((ПСТР(ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));СТОЛБЕЦ(A:GR);1)="(")*СТОЛБЕЦ(A:GR)))*СТОЛБЕЦ(A:GR));99);"")
А можно с дополнительными ячейками. В файле. Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение Можно такую формулу:Код
=ЕСЛИОШИБКА(ИНДЕКС(A$1:A$2000&B$1:B$2000&C$1:C$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)))&ПСТР(ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));МАКС((ЕСЛИ(ПСТР(","&ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));СТОЛБЕЦ(A:GR);1)=",";СТОЛБЕЦ(A:GR))<МАКС((ПСТР(ЛЕВБ(ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(")";ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1)));ПОИСК(N$3;ИНДЕКС(D$1:D$2000&E$1:E$2000;НАИМЕНЬШИЙ(ЕСЛИ(МУМНОЖ(ЕСЛИОШИБКА(ПОИСК({")";"("};D$4:D$2000&E$4:E$2000&"()";ПОИСК(N$3;D$4:D$2000&E$4:E$2000)););{-1:1})>0;СТРОКА($4:$2000));СТРОКА(AK1))))));СТОЛБЕЦ(A:GR);1)="(")*СТОЛБЕЦ(A:GR)))*СТОЛБЕЦ(A:GR));99);"")
А можно с дополнительными ячейками. В файле. Автор - Светлый Дата добавления - 12.08.2021 в 11:57
dmitrijaltman8
Дата: Четверг, 12.08.2021, 13:09 |
Сообщение № 14
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
Светлый, Спасибо. С левой стороны все нормально, но теперь обрезает правую сторону - если текст длинный. Работает очень медленно - 8000 строк обрабатывает за 6 минут. Я когда спрашивал про промежуточные столбцы - имел ввиду такую же работу формул, как сейчас это происходит в столбцах K, L (там не используются массивные формулы и поэтому считается все очень быстро.) Можете просто заменить формулы в столбцах K, L (K - ищет по столбцу D, а L - ищет по столбцу E) - чтобы , они без массивных формул - работали бы каждая по своим ячейкам ? (группировать в оранжевых столбцах - не нужно)
Светлый, Спасибо. С левой стороны все нормально, но теперь обрезает правую сторону - если текст длинный. Работает очень медленно - 8000 строк обрабатывает за 6 минут. Я когда спрашивал про промежуточные столбцы - имел ввиду такую же работу формул, как сейчас это происходит в столбцах K, L (там не используются массивные формулы и поэтому считается все очень быстро.) Можете просто заменить формулы в столбцах K, L (K - ищет по столбцу D, а L - ищет по столбцу E) - чтобы , они без массивных формул - работали бы каждая по своим ячейкам ? (группировать в оранжевых столбцах - не нужно) dmitrijaltman8
Ответить
Сообщение Светлый, Спасибо. С левой стороны все нормально, но теперь обрезает правую сторону - если текст длинный. Работает очень медленно - 8000 строк обрабатывает за 6 минут. Я когда спрашивал про промежуточные столбцы - имел ввиду такую же работу формул, как сейчас это происходит в столбцах K, L (там не используются массивные формулы и поэтому считается все очень быстро.) Можете просто заменить формулы в столбцах K, L (K - ищет по столбцу D, а L - ищет по столбцу E) - чтобы , они без массивных формул - работали бы каждая по своим ячейкам ? (группировать в оранжевых столбцах - не нужно) Автор - dmitrijaltman8 Дата добавления - 12.08.2021 в 13:09
Светлый
Дата: Четверг, 12.08.2021, 13:46 |
Сообщение № 15
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
В столбец O поместил массивную формулу:Код
=ЕСЛИОШИБКА(A4&B4&C4&ПСТР(ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));МАКС((ЕСЛИ(ПСТР(","&ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));СТОЛБЕЦ(A:ALK);1)=",";СТОЛБЕЦ(A:ALK))<МАКС((ПСТР(ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));СТОЛБЕЦ(A:ALK);1)="(")*СТОЛБЕЦ(A:ALK)))*СТОЛБЕЦ(A:ALK));99);"")
Суммарная длина ячеек может быть 1000 символов И в оранжевых немного исправил. Ввёл ещё один дополнительный столбец.Обрезать может не только из-за длины. Может оказаться ошибочная комбинация, когда в одной строке два и более образца. Сейчас формула ищет только один образец в строке.
В столбец O поместил массивную формулу:Код
=ЕСЛИОШИБКА(A4&B4&C4&ПСТР(ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));МАКС((ЕСЛИ(ПСТР(","&ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));СТОЛБЕЦ(A:ALK);1)=",";СТОЛБЕЦ(A:ALK))<МАКС((ПСТР(ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));СТОЛБЕЦ(A:ALK);1)="(")*СТОЛБЕЦ(A:ALK)))*СТОЛБЕЦ(A:ALK));99);"")
Суммарная длина ячеек может быть 1000 символов И в оранжевых немного исправил. Ввёл ещё один дополнительный столбец.Обрезать может не только из-за длины. Может оказаться ошибочная комбинация, когда в одной строке два и более образца. Сейчас формула ищет только один образец в строке. Светлый
Программировать проще, чем писать стихи.
Сообщение отредактировал Светлый - Четверг, 12.08.2021, 13:46
Ответить
Сообщение В столбец O поместил массивную формулу:Код
=ЕСЛИОШИБКА(A4&B4&C4&ПСТР(ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));МАКС((ЕСЛИ(ПСТР(","&ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));СТОЛБЕЦ(A:ALK);1)=",";СТОЛБЕЦ(A:ALK))<МАКС((ПСТР(ЛЕВБ(D4&E4;ПОИСК(")";D4&E4;ПОИСК(N$3;D4&E4)));СТОЛБЕЦ(A:ALK);1)="(")*СТОЛБЕЦ(A:ALK)))*СТОЛБЕЦ(A:ALK));99);"")
Суммарная длина ячеек может быть 1000 символов И в оранжевых немного исправил. Ввёл ещё один дополнительный столбец.Обрезать может не только из-за длины. Может оказаться ошибочная комбинация, когда в одной строке два и более образца. Сейчас формула ищет только один образец в строке. Автор - Светлый Дата добавления - 12.08.2021 в 13:46
dmitrijaltman8
Дата: Четверг, 12.08.2021, 14:01 |
Сообщение № 16
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
Светлый, это тоже массивная формула. Долго считает и не видит результата в ячейке E18 (потому что наверное в одной строке расположены два результата). Можно разместить немассивные формулы извлечения нужного текста в столбцы K и L - по принципу одна формула - следит за конкретной ячейкой (как в моем начальном файле) ?
Светлый, это тоже массивная формула. Долго считает и не видит результата в ячейке E18 (потому что наверное в одной строке расположены два результата). Можно разместить немассивные формулы извлечения нужного текста в столбцы K и L - по принципу одна формула - следит за конкретной ячейкой (как в моем начальном файле) ? dmitrijaltman8
Ответить
Сообщение Светлый, это тоже массивная формула. Долго считает и не видит результата в ячейке E18 (потому что наверное в одной строке расположены два результата). Можно разместить немассивные формулы извлечения нужного текста в столбцы K и L - по принципу одна формула - следит за конкретной ячейкой (как в моем начальном файле) ? Автор - dmitrijaltman8 Дата добавления - 12.08.2021 в 14:01
Светлый
Дата: Четверг, 12.08.2021, 18:36 |
Сообщение № 17
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
немассивные формулы извлечения нужного текста
Для данного случая я пока таких не придумал.Почему-то даже самые упрощённые требуют массивности. Можно попробовать придумать четыре дополнительных столбца с немассивными формулами. Вдруг получится.
немассивные формулы извлечения нужного текста
Для данного случая я пока таких не придумал.Почему-то даже самые упрощённые требуют массивности. Можно попробовать придумать четыре дополнительных столбца с немассивными формулами. Вдруг получится.Светлый
Программировать проще, чем писать стихи.
Ответить
Сообщение немассивные формулы извлечения нужного текста
Для данного случая я пока таких не придумал.Почему-то даже самые упрощённые требуют массивности. Можно попробовать придумать четыре дополнительных столбца с немассивными формулами. Вдруг получится.Автор - Светлый Дата добавления - 12.08.2021 в 18:36
dmitrijaltman8
Дата: Четверг, 12.08.2021, 18:56 |
Сообщение № 18
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
Светлый, я имею ввиду - как выполнить эту операцию - не для диапазона, а только для одной ячейки ?
Светлый, я имею ввиду - как выполнить эту операцию - не для диапазона, а только для одной ячейки ? dmitrijaltman8
Ответить
Сообщение Светлый, я имею ввиду - как выполнить эту операцию - не для диапазона, а только для одной ячейки ? Автор - dmitrijaltman8 Дата добавления - 12.08.2021 в 18:56
Светлый
Дата: Четверг, 12.08.2021, 20:13 |
Сообщение № 19
Группа: Друзья
Ранг: Старожил
Сообщений: 1829
Репутация:
510
±
Замечаний:
0% ±
Excel 2013, 2016
Программировать проще, чем писать стихи.
Ответить
Сообщение Автор - Светлый Дата добавления - 12.08.2021 в 20:13
dmitrijaltman8
Дата: Четверг, 12.08.2021, 22:11 |
Сообщение № 20
Группа: Пользователи
Ранг: Участник
Сообщений: 61
Репутация:
0
±
Замечаний:
20% ±
2016
Светлый, получился вот такой документ. Там - в ячейке AI4 - обрезается текст. У меня как раз большая часть текста - больше 1000 символов. Подскажите, как изменить имеющуюся немассивную формулу, чтобы текст не обрезался ?
Светлый, получился вот такой документ. Там - в ячейке AI4 - обрезается текст. У меня как раз большая часть текста - больше 1000 символов. Подскажите, как изменить имеющуюся немассивную формулу, чтобы текст не обрезался ? dmitrijaltman8
Сообщение отредактировал dmitrijaltman8 - Четверг, 12.08.2021, 22:18
Ответить
Сообщение Светлый, получился вот такой документ. Там - в ячейке AI4 - обрезается текст. У меня как раз большая часть текста - больше 1000 символов. Подскажите, как изменить имеющуюся немассивную формулу, чтобы текст не обрезался ? Автор - dmitrijaltman8 Дата добавления - 12.08.2021 в 22:11