Страницы: 1
RSS
Преобразование таблицы (строки - столбцы) в строчные данные
 
Добрый день.

Помогите идеями как реализовать следующее:
Есть матрица, пример таков (Screenshot 1)
Хочу на выходе получить вот так (Screensho 2)

Хотел бы реализовать по одной формуле в столбце и не используя copy-paste. Пока сам не смог додуматься как это можно реализовать...

Буду благодарен...
 
используйте ИНДЕКС
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
я вроде как понимаю применение ИНДЕКСА...
но как сделать чтобы на выходе получить автоматом переход строк, типа:
идёт 4 ашан
далее 1 новус
далее 3 метро
и потом 2 АТБ

чтобы формула брала следжующую "сеть" и перескакивала на нижнюю строку... как на втором скриншоте
 
повторюсь: используйте ИНДЕКС
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Андрей Войчук, а Вы понимаете, что правила форума не просто так написаны?
 
Да. Поэтому я ничего не рекламирую, никого не оскорбляю и т.д.
КАК пользоваться индексом я тоже на ЮТУБЕ просмотрел видео-укрок но так как не получается, решил написать...
Не может ИНДЕКС приводить в действие тот факт, что после 4х ячеек "ашан" в столбце "К" появляется "новус", а после него 3 ячейки вниз "метро" и т.д.
 
может
укажите из какого диапазона взять ИНДЕКС и собственно вычислите строку и столбец
получите значение из диапазона по индексам его строки и столбца
ИНДЕКС(ВзятьОтсюда; ИзСтроки; ИзСтолбца)
откуда брать - понятно, осталось вычислить № строки, № столбца)
а если ВзятьОтсюда - это вектор, то достаточно посчитать 1 индекс (№ элемента в векторе данных)
Изменено: Ігор Гончаренко - 30.04.2021 20:45:53
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
Андрей Войчук,
Вам пытаются всего-лишь дать понять, что нужно выкладывать пример в файле.
 
Вы чертовы гении (в хорошем смысле этого слова)!!!
ОГРОМНОЕ СПАСИБО!!!
Игорь о функции "АГРИГАТ" ничего не писал... я даже о ней никогда не слышал!!!.

P.S. за файл с примером я понял. спасибо еще раз
 
Цитата
Андрей Войчук написал:
Игорь о функции "АГРИГАТ" ничего не писал
Он описал самое главное - принцип работы. А получить данные можно по-разному.
 
см.вложение)
Код
=ИНДЕКС($D$1:$G$1; ПОИСКПОЗ(СТРОКА()-1;$K$1:$N$1))
=ИНДЕКС($C$1:$C$6;НАИМЕНЬШИЙ(ЕСЛИ(ЕЧИСЛО(ИНДЕКС($D$1:$G$6;;ПОИСКПОЗ(СТРОКА()-1;$K$1:$N$1)));СТРОКА(ИНДЕКС($D$1:$G$6;;ПОИСКПОЗ(СТРОКА()-1;$K$1:$N$1))));СТРОКА()-ИНДЕКС($K$1:$N$1;ПОИСКПОЗ(СТРОКА()-1;$K$1:$N$1))))
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!
 
memo тоже о функции АГРИГАТ ничего не писал :)
 
Без АГРЕГАТ массивные:
Код
=ЕСЛИОШИБКА(ИНДЕКС($1:$1;НАИМЕНЬШИЙ(ЕСЛИ(C$2:F$6;СТОЛБЕЦ(C:F));СТРОКА(A1)));"")
=ЕСЛИОШИБКА(ИНДЕКС(B:B;ПРАВБ(НАИМЕНЬШИЙ(ЕСЛИ(C$2:F$6;СТОЛБЕЦ(C:F)*10+СТРОКА($2:$6));СТРОКА(C1))));"")
И с АГРЕГАТ позволил себе немного причесать формулы memo:

Код
=ЕСЛИОШИБКА(ИНДЕКС($1:$1;АГРЕГАТ(15;6;СТОЛБЕЦ(C:F)/C$2:F$6;СТРОКА(A1)));"")
=ЕСЛИОШИБКА(ИНДЕКС(B:B;ПРАВБ(АГРЕГАТ(15;6;(СТОЛБЕЦ(C:F)&СТРОКА($2:$6))/C$2:F$6;СТРОКА(C1))));"")
Изменено: Светлый - 30.04.2021 22:49:39
 
рекомендую PQ
 
Андрей Войчук, попробуйте редизайнер из приёмов или вот этот (интереснее)
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Страницы: 1
Наверх