Помогите решить задачу в огромной таблице. Для упрощения пример такой: У меня список из 12 фильмов. У каждого фильма есть свой режиссер. сценарист, главный актер, бюджет и тд Тарантино и режиссер и сценарист и иногда актер, а где то например продюсер, ну а к некоторым фильмам в списке он не имеет отношения. 1. Как мне поставить один фильтр или срез, чтобы отобразить только фильмы, к которым Тарантино имеет хоть какое-то отношение - без добавления новых столбцов 2. Как мне вывести сводную таблицу со списком Фамилий и суммой бюджетов фильмов к которым они имеют отношение, чтобы далее двойным кликом раскрыть лист с детализацией. Добавив новый столбец с отметкой что к фильму имеет отношение Тарантино я проблему не решу, т.к. мне нужно фильтроваться и по остальным деятелям кинобизнеса. По факту таблица с тысячами фильмов и тысячами участников.
MadNike, способ из этого примера сокращает список. т.е. я найду по этой методике только фильм где Тарантино во всех должностях и это будет список из 0 фильмов. А мне нужно наоборот расширить список не теряя фильмы где Тарантино не режиссер, но хотя бы сценарист
nilske, Было бы конечно очень легко если бы таблица не имела деления на столбцы по должностям, а имела просто дубли строк с повторяющимися фильмами Омерзительная восьмерка - сценарист - Тарантино Омерзительная восьмерка - режиссер - Тарантино Омерзительная восьмерка - главная роль - Тим Рот
так было бы очень просто создать сводную таблицу и все посмотреть. но задача сложнее именно из-за таблицы и ее колонок и опять таки тогда бы дублировался бюджет фильма и сумма в сводной таблице множилась
Всех приветствую! Заинтересовала тема, накидал небольшую табличку, вижу частичное решение темы через расширенный фильтр (хотя для ТС исходя из запроса на сводную таблицу не подойдет, но ради собственного интереса), но докрутить саму формулу критерия для выбранных в срезе значений не получается, для 1 значения все фильтруется как надо, а для нескольких срабатывает только для значения выше по индексу. Причем сама формула отрабатывает правильно, но расширенный фильтр как-будто ее не воспринимает в виде массива. Может есть другое направление, чтоб прописать критерий расширенного фильтра. Заранее спасибо! Файл во вложении.
Timur X, для чего Вы приложили пустой файл? Вариант формулами (попаразитировал на фале от Alex), для современных версий. Выбирайте нужного 'Тарантино' в выпадающем списке
в свою очередь "попаразитирую" на формулах ) =ФИЛЬТР(tblData;ЕЧИСЛО(ПОИСК(A1;tblData[Режиссёр]&tblData[Сценарист]&tblData[Продюсер]&tblData[Актёр]))) =СУММ(I:I)
Доброе утро. Sanja, Павел \Ʌ/, спасибо за Ваши варианты и потраченное время. У самого изначальная задумка была похожая, но захотелось осуществить возможность выбора нескольких вариантов одновременно.
Павел \Ʌ/, по второй - согласен, проще. А по первой...зачем использовать 3 функции, если решается одной? А если убрать баксы и последние кавычки, то и длина формулы всего на 2 знака длиннее)
Согласие есть продукт при полном непротивлении сторон
По приложенному примеру действительно по ошибке пустой файл приложил - прошу прощения. Sanja, сформировал файл гораздо лучше чем я планировал вложить - поэтому еще раз спасибо.
На моем объеме данных выдает ошибку по функции Объединить. Слишком длинный текст у меня "актеров" около 3000 уникальных Столбцов в моей таблице тоже не мало и в итоге я получаю не сводную таблицу краткого формата, список со всеми столбцами, но со строками в количестве удобном для анализа
Проверил. Ошибка именно в этом. Т.к. когда я уменьшаю таблицу - то формула срабатывает. Поэтому я ищу вариант именно со сводной. Фамилий у меня в столбцах Режиссер/Актер/Продюссер и тд - уникальных 3000, фильмов 20000. Поэтому вопрос открыт - задача не решена
Timur X, я себе для спарсенных с Кинопоиска фильмов сделал модельку в power query и кручу ее в разных разрезах для оптимизации просмотров фильмов. На вашем месте вытянул бы в отдельный столбец из всех других столбцов строки всех персоналий в одну ячейку, например, через запятую, и в сводной сделал бы не срез, а поместил это поле в фильтр, а в фильтре руками вводить персоналию.
Вариантов Сводной нет (если данные в таком виде как в моем файле, таблица не нормализована) Без Вашего примера (как можно более близкого к реальным данным) говорить более не о чем
Согласие есть продукт при полном непротивлении сторон
Timur X, вариант 2: пишем в какой-то ячейке персоналию -> загружаем как текст в PQ -> в PQ через Text.Contains + Table.SelectRows фильтруем таблицу -> обновляем модель при каждом новом значении в ячейке-> гарантированно при таком варианте будут работать все остальные фильтры и срезы вариант 3: пишем меру через DAX, фильтрующую строки, как в варианте2, и помещаем ее в фильтр сводной - но это будет равнозначно варианту 1 выше
Timur X, PQ поле "Персоналия" вставляем в фильтр сводной
Скрытый текст
Код
let
Источник = Excel.CurrentWorkbook(){[Name="tblData"]}[Content],
замена_null = Table.ReplaceValue(Источник,null,"",Replacer.ReplaceValue,{"Режиссёр", "Сценарист", "Продюсер", "Актёр"}),
персоналия = Table.AddColumn(замена_null, "Персоналия", each [Режиссёр]&[Сценарист]&[Продюсер]&[Актёр])
in
персоналия
можно и просто в excel соединить столбцы также абсолютно
В таком варианте поиск стал давать еще больше вариантов там где Тарантино записан как Тарантино Квентин и Квентин Тарантино - вносим в ячейку Тарантино и список будет со всеми Тарантинами:)
Timur X, как вариант для модели - погуглите примеры использования таблицы связей (LinkTable или BridgeTable или DateBridge). Т.е. скриптом/макросом/PQ по исходным данным генерите в модель таблицу, где может быть всего два поля - Фильм и Персона, и связываете её с справочником персон по персоне, и с данными по Фильму. Т.е в модели всего 3 таблицы - данные, справочник персон, таблица связей. Кстати т.к. пишите что "фильмов" много, и названия ведь могут быть длинные - для экономии и облегчения работы есть смысл создать короткие ключи, в данном случае можно просто взять нумерацию этих фильмов в базе. А вообще - можно брать хэш этого длинного названия. И один срез - Персона. Как сделать в Экселе - не покажу, что-то у меня он глючит с этими моделями/срезами сегодня... Да и не делал такого в Экселе, в другой системе обычно использовали такое.