У меня есть главный лист с тысячами строк. Этот лист по сути является материнским листом, откуда другие листы будут брать свои данные. Возьмем для примера следующую материнскую таблицу:
Теперь у меня есть еще один лист, который предназначен исключительно для музыкальных событий. Таблица выглядит так:
По сути, мне нужна формула в формате A3, которая будет извлекать из материнского листа только уникальные музыкальные события.
Я знаю, что этого можно добиться с помощью сводной таблицы, но я предпочитаю метод формулы, который, вероятно, будет включать индекс и соответствие.
Спасибо.
решение1
Вы можете заполнить все три столбца одной формулой.
Эту формулу массива в A3 вашего второго листа необходимо вводить с помощью CTRLShiftEnter, а не просто Enter. Если все сделано правильно, формула будет заключена в фигурные скобки в строке формул.
=IFERROR(INDEX(IF($A$1:$A$10="Musical",B$1:B$10,""),SMALL(IF($A$1:$A$10="Musical",ROW(B$1:B$10),""),ROW()-2)),"")
Вам также придется изменить диапазоны, включив в них имя вашего главного листа, т. е. Sheet1!$A$1:$A$10
, и расширить диапазоны по мере необходимости. Поскольку в вашей главной таблице тысячи строк, вы можете использовать целые диапазоны столбцов, т. е Sheet1!$A:$A
. .
После того, как формула введена в A3, заполните ее справа, а затем вниз, пока результаты не будут отображаться как пустые. Вот пример таблицы, где исходные и новые значения находятся на одном листе.
Примечание: IFERROR() может быть немного медленной, поэтому вы можете заполнять данные поэтапно и каждый раз ждать появления результатов.
Удачи, и надеюсь, это поможет.