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

Вход

Регистрация

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

 

= Мир MS Excel/Поиск совпадающей последовательности ячеек - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, Pelena, китин  
Мир MS Excel » Работа и общение » Мозговой штурм » Поиск совпадающей последовательности ячеек (Найти начало совпадения образца с элементами массива)
Поиск совпадающей последовательности ячеек
Понравилось?
Светлый Дата: Четверг, 26.09.2019, 10:57 | Сообщение № 1
Группа: Друзья
Ранг: Старожил
Сообщений: 1299
Репутация: 326 ±
Замечаний: 0% ±

Excel 2010
Доброго всем времени, штурмовики и прочие!
Есть последовательность из ограниченного числа символов ("A", "B", "C"). В столбце до 999 значений.
Начало последовательности возьмём за образец. 5-10 ячеек.
Надо найти с какой строки эта последовательность начнёт повторяться.
В табличке задано сколько значений должно совпасть. Надо вычислить, с какой строки. Результат вычислений представлен в виде значений.
Первоначальная моя формула получилась 188 символов. Довёл её до 129. На другом принципе построил формулу в 121 символ. Пока доводил, Excel 2003 стал невосприимчив к этой формуле. Если у кого-то будет и в 2003 работать - хорошо. А нет, так и не надо. И "беспринципная" формула получилась 89 символов.
Можно ли получить ещё короче?
Вскрываться предлагаю 07.10.2019.
Всем удачи!
К сообщению приложен файл: Ryad.xlsx(15.9 Kb)


Программировать проще, чем писать стихи.
 
Ответить
СообщениеДоброго всем времени, штурмовики и прочие!
Есть последовательность из ограниченного числа символов ("A", "B", "C"). В столбце до 999 значений.
Начало последовательности возьмём за образец. 5-10 ячеек.
Надо найти с какой строки эта последовательность начнёт повторяться.
В табличке задано сколько значений должно совпасть. Надо вычислить, с какой строки. Результат вычислений представлен в виде значений.
Первоначальная моя формула получилась 188 символов. Довёл её до 129. На другом принципе построил формулу в 121 символ. Пока доводил, Excel 2003 стал невосприимчив к этой формуле. Если у кого-то будет и в 2003 работать - хорошо. А нет, так и не надо. И "беспринципная" формула получилась 89 символов.
Можно ли получить ещё короче?
Вскрываться предлагаю 07.10.2019.
Всем удачи!

Автор - Светлый
Дата добавления - 26.09.2019 в 10:57
MCH Дата: Четверг, 26.09.2019, 13:56 | Сообщение № 2
Группа: Админы
Ранг: Старожил
Сообщений: 1921
Репутация: 720 ±
Замечаний: ±

123 121 99
 
Ответить
Сообщение123 121 99

Автор - MCH
Дата добавления - 26.09.2019 в 13:56
Светлый Дата: Четверг, 26.09.2019, 14:09 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1299
Репутация: 326 ±
Замечаний: 0% ±

Excel 2010
Прямо, реактивный! Гиперзвуковой!
Для 2003 - 97 символов.


Программировать проще, чем писать стихи.
 
Ответить
СообщениеПрямо, реактивный! Гиперзвуковой!
Для 2003 - 97 символов.

Автор - Светлый
Дата добавления - 26.09.2019 в 14:09
MCH Дата: Четверг, 26.09.2019, 15:10 | Сообщение № 4
Группа: Админы
Ранг: Старожил
Сообщений: 1921
Репутация: 720 ±
Замечаний: ±

в 2003 не могу проверить, но вроде в нем должно работать
Правда помню, что у МУМНОЖ были ограничения на размер перемножаемых матриц
 
Ответить
Сообщениев 2003 не могу проверить, но вроде в нем должно работать
Правда помню, что у МУМНОЖ были ограничения на размер перемножаемых матриц

Автор - MCH
Дата добавления - 26.09.2019 в 15:10
bmv98rus Дата: Суббота, 05.10.2019, 08:26 | Сообщение № 5
Группа: Проверенные
Ранг: Участник клуба
Сообщений: 2632
Репутация: 453 ±
Замечаний: 0% ±

Excel 2013/2016
Стартовал с 148 (146 Eng) и пока так и стоит незыблемо :-(


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Суббота, 05.10.2019, 08:28
 
Ответить
СообщениеСтартовал с 148 (146 Eng) и пока так и стоит незыблемо :-(

Автор - bmv98rus
Дата добавления - 05.10.2019 в 08:26
krosav4ig Дата: Воскресенье, 06.10.2019, 23:27 | Сообщение № 6
Группа: Друзья
Ранг: Старожил
Сообщений: 2182
Репутация: 913 ±
Замечаний: 0% ±

Excel 2007,2010,2013
у меня 131 без = и дальше не двигается


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениеу меня 131 без = и дальше не двигается

Автор - krosav4ig
Дата добавления - 06.10.2019 в 23:27
MCH Дата: Понедельник, 07.10.2019, 07:56 | Сообщение № 7
Группа: Админы
Ранг: Старожил
Сообщений: 1921
Репутация: 720 ±
Замечаний: ±

Цитата Светлый, 26.09.2019 в 10:57, в сообщении № 1 ()
Вскрываться предлагаю 07.10.2019

мое решение под задачу:
Код
=ПОИСКПОЗ(;МУМНОЖ(Ч(СТОЛБЕЦ(A:J)<=B5);Ч(Т(СМЕЩ(A$4;СТРОКА($1:$10)+СТОЛБЕЦ(A:ALJ);))<>A$5:A$14));)+5

Остальные варианты во вложении
К сообщению приложен файл: _Ryad.xlsx(17.1 Kb)
 
Ответить
Сообщение
Цитата Светлый, 26.09.2019 в 10:57, в сообщении № 1 ()
Вскрываться предлагаю 07.10.2019

мое решение под задачу:
Код
=ПОИСКПОЗ(;МУМНОЖ(Ч(СТОЛБЕЦ(A:J)<=B5);Ч(Т(СМЕЩ(A$4;СТРОКА($1:$10)+СТОЛБЕЦ(A:ALJ);))<>A$5:A$14));)+5

Остальные варианты во вложении

Автор - MCH
Дата добавления - 07.10.2019 в 07:56
bmv98rus Дата: Понедельник, 07.10.2019, 10:54 | Сообщение № 8
Группа: Проверенные
Ранг: Участник клуба
Сообщений: 2632
Репутация: 453 ±
Замечаний: 0% ±

Excel 2013/2016
Да, про ограничения я не посмотрел, я про от 5 до 10 :-).
Универсально, но не коротко получалось так
Код
=MATCH(B5;MMULT(--(INDEX(A:A;N(INDEX(ROW($A$6:$A$1000)+COLUMN(OFFSET(A$1;;;;B5))-1;)))=TRANSPOSE(OFFSET(A$5;;;B5)));ROW(OFFSET(A$5;;;B5))^0);)+5


Тезка, а ограничением для 2003 станет COLUMN(A:ALJ), а не MMULT


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Понедельник, 07.10.2019, 11:13
 
Ответить
СообщениеДа, про ограничения я не посмотрел, я про от 5 до 10 :-).
Универсально, но не коротко получалось так
Код
=MATCH(B5;MMULT(--(INDEX(A:A;N(INDEX(ROW($A$6:$A$1000)+COLUMN(OFFSET(A$1;;;;B5))-1;)))=TRANSPOSE(OFFSET(A$5;;;B5)));ROW(OFFSET(A$5;;;B5))^0);)+5


Тезка, а ограничением для 2003 станет COLUMN(A:ALJ), а не MMULT

Автор - bmv98rus
Дата добавления - 07.10.2019 в 10:54
Светлый Дата: Понедельник, 07.10.2019, 14:07 | Сообщение № 9
Группа: Друзья
Ранг: Старожил
Сообщений: 1299
Репутация: 326 ±
Замечаний: 0% ±

Excel 2010
Ну и свои варианты. Формулы массивов:
Код
=ПОИСКПОЗ(;МУМНОЖ(-ТРАНСП(Т(СМЕЩ(A$4;СТОЛБЕЦ(A:AZZ)+СТРОКА($1:5);))<>A$5:A9);1^B$5:B9);)+5
Код
=ПОИСКПОЗ(;МУМНОЖ(-ТРАНСП(Т(ДВССЫЛ("A"&СТОЛБЕЦ(A:AZZ)+СТРОКА($5:9)))<>A$5:A9);1^B$5:B9);)+5
И другие формулы в файле.
К сообщению приложен файл: RyadOtv.xlsx(21.2 Kb)


Программировать проще, чем писать стихи.
 
Ответить
СообщениеНу и свои варианты. Формулы массивов:
Код
=ПОИСКПОЗ(;МУМНОЖ(-ТРАНСП(Т(СМЕЩ(A$4;СТОЛБЕЦ(A:AZZ)+СТРОКА($1:5);))<>A$5:A9);1^B$5:B9);)+5
Код
=ПОИСКПОЗ(;МУМНОЖ(-ТРАНСП(Т(ДВССЫЛ("A"&СТОЛБЕЦ(A:AZZ)+СТРОКА($5:9)))<>A$5:A9);1^B$5:B9);)+5
И другие формулы в файле.

Автор - Светлый
Дата добавления - 07.10.2019 в 14:07
bmv98rus Дата: Понедельник, 07.10.2019, 14:47 | Сообщение № 10
Группа: Проверенные
Ранг: Участник клуба
Сообщений: 2632
Репутация: 453 ±
Замечаний: 0% ±

Excel 2013/2016
Светлый, Коллеги, откуда в 2003 столбец AZZ???
За T(OFFSET спасибо и тезке тоже, пытался пытался приладить и не допер. не решало мой вопрос.


Замечательный Временно просто медведь , процентов на 20.

Сообщение отредактировал bmv98rus - Понедельник, 07.10.2019, 19:51
 
Ответить
СообщениеСветлый, Коллеги, откуда в 2003 столбец AZZ???
За T(OFFSET спасибо и тезке тоже, пытался пытался приладить и не допер. не решало мой вопрос.

Автор - bmv98rus
Дата добавления - 07.10.2019 в 14:47
krosav4ig Дата: Вторник, 08.10.2019, 02:59 | Сообщение № 11
Группа: Друзья
Ранг: Старожил
Сообщений: 2182
Репутация: 913 ±
Замечаний: 0% ±

Excel 2007,2010,2013
мои 131 симолов, по сути, то же самое, что и у bmv98rus
Код
=ПОИСКПОЗ(B5;МУМНОЖ(--(Т(СМЕЩ(A$1;СТРОКА(A$4:A$1000)+СТОЛБЕЦ(СМЕЩ(A1;;;;B5));))=ТРАНСП(СМЕЩ(A$5;;;B5)));СТРОКА(СМЕЩ(A1;;;B5))^0);)+5


email:krosav4ig26@gmail.com WMR R207627035142 WMZ Z821145374535 ЯД 410012026478460
 
Ответить
Сообщениемои 131 симолов, по сути, то же самое, что и у bmv98rus
Код
=ПОИСКПОЗ(B5;МУМНОЖ(--(Т(СМЕЩ(A$1;СТРОКА(A$4:A$1000)+СТОЛБЕЦ(СМЕЩ(A1;;;;B5));))=ТРАНСП(СМЕЩ(A$5;;;B5)));СТРОКА(СМЕЩ(A1;;;B5))^0);)+5

Автор - krosav4ig
Дата добавления - 08.10.2019 в 02:59
Мир MS Excel » Работа и общение » Мозговой штурм » Поиск совпадающей последовательности ячеек (Найти начало совпадения образца с элементами массива)
  • Страница 1 из 1
  • 1
Поиск:

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