Добрый день. Почему-то неактивно вычисляемое поле в сводной таблице. Не могу понять почему. |
|
Sii Пользователь Сообщений: 68 |
Probably_Jonny, да в вашей сводной не активно. Построила рядом еще одну, там все норм |
Разобрался, проблема оказалась в том, что автоматом проставлялась галка: «Добавить эти данные в модель данных» |
|
Vladimir Chebykin Пользователь Сообщений: 1225 |
#5 13.12.2021 07:29:01
характерно для Excel с поддержкой power pivot. В других версиях такого не должно происходить. Только вопрос, если у Вас Excel уже с Power Pivot, то зачем использовать вычисляемые поля? функции вычисляемых полей крайне ограничены в отличие от возможностей DAX и модели данных. |
||
Кирилл Панидов Пользователь Сообщений: 1 |
#6 15.12.2021 23:58:03
очень облегчило! Спасибо! |
||
Olga Пользователь Сообщений: 1 |
#7 13.03.2023 13:07:07
интересно. Аналогичная проблема. Но специально создала таблицу с нуля, (галка не стоит) , а вычисляемое поле не отображается. |
||
surkenny Пользователь Сообщений: 2367 |
#8 13.03.2023 13:45:18 Olga, а есть ли в Вашем Excel Power Pivot?
Более того. Если вы создадите модель, реализуете все меры (читай — вычисляемые поля) и вычисляемые столбцы, то это корректно будет работать даже у других пользователей, у которых нет PP. Просто они не смогут изменять модель/меры. P.S. Ваш вопрос примерно так звучит: как пользоваться счетами? А зачем, если есть калькулятор? P.P.S. У Вас потом проблемы возникнут.
Изменено: surkenny — 13.03.2023 13:54:18 |
||||
вычисляемые объекты в сводной таблице отключают фильтр самой таблицы
Автор ритузы, 21.04.2010, 00:21
« назад — далее »
Здравствуйте.
Проблема нетривиальная:
есть таблица
Месяц №счета Тип лица Имя Сумма
Январь 00002 ЮЛ ООО «Рога» 10000
Январь 00001 ФЛ Иванов 100
Январь 00002 ЮЛ ООО «Рога» 200
Февраль 00003 ФЛ Петров 300
Февраль 00002 ЮЛ ООО «Рога» 200
Март 00004 ЮЛ ООО «Копыта» 200
Делаю на базе этой табл. сводную, кот выглядит примерно так
Январь Февраль Март
ФЛ
Иванов 100 0 0
Петров 0 100 0
ЮЛ
ООО»Рога» 10200 200
ООО»Копыта» 0 0 200
Добавляю в сводной справа столбец типа «Вычисляемый объект», который сравнивает суммы каждого соседнего месяца. Этот столбец отображает результат, но вот вся эта красивая группировка, которая используется в сводных таблицах, пропадает, и выглядит примерно так
Январь Февраль Март Больше чем в предыдущем месяце?
ФЛ
Иванов 100 0 0 ложь
Петров 0 100 0 ложь
ООО»Рога» 10200 200 ложь
ООО»Копыта» 0 0 200 правда
ЮЛ
Иванов 100 0 0 ложь
Петров 0 100 0 ложь
ООО»Рога» 10200 200 ложь
ООО»Копыта» 0 0 200 правда
— группировка по ЮЛ-ФЛ = это лишь одна из группировок. Предполагается, что группировка и сравнение будет по разным критериям — а вот вычисляемый объект, должен выдавать желаемый результат независимо от того, как мы крутим таблицу.
Кто-то знает выход? Спасибо!
ритузы,
куда Вы там файл спрятали?
Вытаскивайте.
ОК. Возможно, что я криво объяснил. Тогда вот вам пример в прикрепленном файле. В листе DATA — данные по оплате клиентов по месяцам — всего два месяца — Январь и Февраль. В этом же листе характеристики каждого клиента — Номер, Тип и т.д. Количество оплат от одного клиента может быть более 1 в месяц. В Листе 6 — сводная таблица, которая считает суммарные оплаты по месяцам для каждого клиента, а также выставлена разбивка по ФЛ и ЮЛ. Все хорошо, но как только, я добавляю в сводную таблицу «вычисляемый объект» — Столбец «Формула 1» в сводной таблице — разбиение по ФЛ и ЮЛ не работает — в обеих группах все клиенты. Как это можно обойти? Спасибо!
На ПланетеЭксель ответил.
Жду помощи
ритузы,
Предлагаю сделать не с помощью вычисляемого объекта,
а с помощью формул в доп. столбце в таблице.
ОК. Делаю в столбце справа формулу, которая использует данные той же строчки в сводной таблице — растягиваю вниз эту ячейку: имею тоже значение везде. В смысле формула везде одинаковая и ссылается на одну и ту же строку, т.е. эксель не считает автоматически.
Да нет, там формула непростая должна быть.
Посмотрите вложение, может так подойдет.
Цитата: ритузы от 27.04.2010, 10:17
На ПланетеЭксель ответил.
Жду помощи
Т.е. ответ, что это невозможно — Вас не устраивает?
Тогда ловите файлик. Сделано принципиально по-другому, чем вариант уважаемого ZORRO2005 (сводной таблицей можно пользоваться как обычно
Цитировать…вычисляемый объект, должен выдавать желаемый результат независимо от того, как мы крутим таблицу…
), однако формулу использовал его, тупо скопировав
ЗЫ Совет. Если Вам всё-равно как добится результата — так и пишите. Я на протяжении всей переписки на трёх форумах думал, что Вам надо решение ИМЕННО с вычисляемым полем и Вам надо обойти его свойства. И только сейчас увидев Ваше
ЦитироватьОК. Делаю в столбце справа формулу…
понял что Вам всё-равно…
Цитата: ZORRO2005 от 27.04.2010, 14:57
Да нет, там формула непростая должна быть.
Ну да, типа формулы Serge 007,
правда если кол-во месяцев вырастет надо будет новую придумывать.
P.S.
Serge 007,
хорошее решение разместить Январь-Февраль в «Названия строк».
Цитата: ZORRO2005 от 27.04.2010, 21:56
Цитата: ZORRO2005 от 27.04.2010, 14:57
Да нет, там формула непростая должна быть.Ну да, типа формулы Serge 007,
правда если кол-во месяцев вырастет надо будет новую придумывать.P.S.
Serge 007,
хорошее решение разместить Январь-Февраль в «Названия строк».
Да не, просто старую скопировать, но Вы правы: каждый месяц.
ЗЫ Я подумал что автору просто визуал нужен, типа кто в «передовиках» и т.д. Так больше подходит.
ОК, но тогда мы не можем воспользоваться удобством сводной таблицы… Положим я в столбцы добавлю еще критерий, или, что естественно, справа будут заполняться столбцы последующими месяцами, тогда этот столбец с формулами будет затираться при перепостроении сводной таблицы
Сори не обновил форум… сейчас только смотрю ответ от Serge 007
ЦитироватьТогда ловите файлик. Сделано принципиально по-другому, чем вариант уважаемого ZORRO2005 (сводной таблицей можно пользоваться как обычно
— отлично! Только формулу в дате не разобрал, условие уж совсем непростое…{=СУММ(ЕСЛИ(C3&$M$1=$C$2:$C$45&$A$2:$A$45;$L$2:$L$45;0))}
ЦитироватьЗЫ Совет. Если Вам всё-равно как добится результата — так и пишите.
Полагаю, мне надо было написать об этом прямо.
ЦитироватьЯ на протяжении всей переписки на трёх форумах думал, что Вам надо решение ИМЕННО с вычисляемым полем и Вам надо обойти его свойства.
все на двух форумах я эту задачу запостил. Хотя это и не имеет значения.
Вообще, вариант с добавлением в лист DATA вполне устраивает, ибо там уже много столбцов с формулами, которые используют исходные данные.
ЦитироватьДа ещё и меня обманщиком выставляют
ОК, я ж не хотел Вас выставить обманщиком. Про 3-ю третью ссылку я забыл. Извиняюсь.
Спасибо за решение — принял его на вооружение, почитал про массивы… Что самое интересное — работает!
Осталась одна проблема, которую я сейчас пытаюсь понять: при «протягивании» данной формулы вниз, начиная с 450 строчки начинает выдавать одно и то же значение ( которое было в первой эталонной строке). Причем, если просто войти в редактирование такой ячейки и нажать Ctrl+Shift+Enter, появляется правильный результат. Полагаю, это как-то завязано с автовычислением, которое я отключил из-за дискомфорта непрекращающихся вычислений в таблице, где данных около 50000 строчек.
Цитата: ритузы от 29.04.2010, 15:01
Спасибо за решение — принял его на вооружение, почитал про массивы… Что самое интересное — работает!
ЦитироватьЯ бы не стал неработающее выкладывать
…при «протягивании» данной формулы вниз, начиная с 450 строчки начинает выдавать одно и то же значение ( которое было в первой эталонной строке). Причем, если просто войти в редактирование такой ячейки и нажать Ctrl+Shift+Enter, появляется правильный результат. Полагаю, это как-то завязано с автовычислением, которое я отключил из-за дискомфорта непрекращающихся вычислений в таблице, где данных около 50000 строчек.
Помочь не могу. Я заполнил такими формулами весь лист — медленно думает, но работает. Автоперсчёт включён.
Да. К сожалению, считает долго: 500 строчек за полчаса, всего строчек под 50000 и количество будет увеличиваться. В случае всех строчек, считает очень долго, через неск. часов просто застрявает на каком-то этапе… Помогает сужать диапазон месяцев, например, берем март-апрель только.
Но это не выход, ибо хочется смотреть динамику по всем месяцам в году. Можно ли формулку хитрую как-то оптимизировать? Может разбивку какую-то делать, разбить процесс на несколько итераций…
Я не силен в нем — это уже база данных получается…
А посмотрите такой вариант:
Скажи мне, кудесник, любимец ба’гов…
Яндекс-деньги: 41001632713405
Webmoney: R289877159277; Z102172301748; E177867141995
- Профессиональные приемы работы в Microsoft Excel
-
►
Обмен опытом -
►
Microsoft Excel -
►
вычисляемые объекты в сводной таблице отключают фильтр самой таблицы
Я пытаюсь создать простую электронную таблицу, содержащую таблицы для бюджета (по категориям) и список транзакций (с каждой транзакцией, принадлежащей категории), а затем сводную таблицу, показывающую сводку бюджета и фактических расходов по категориям .
Основы работают нормально, как показано ниже:
(Синяя таблица — это транзакции, зеленая — это бюджет, а розовая таблица — это сводная таблица)
Чтобы сводная таблица работала, как показано выше, мне пришлось создать связь, как показано ниже:
Пока все хорошо. Проблема в том, что теперь я хочу добавить еще один столбец в сводную таблицу, показывающий оставшийся бюджет / перерасход. то есть бюджет категории за вычетом суммы, потраченной на эту категорию на данный момент. (Или = Столбец2 — Столбец3)
Все, что я читал в Интернете, говорит, что мне нужно добавить «Расчетное поле» из меню «Поля, элементы и наборы», однако для меня это неактивно:
Я искал, почему это выделено серым цветом, и все, что я смог найти, это то, что «вычисляемые поля» не могут быть добавлены для данных, полученных из OLAP, но мои данные не из OLAP.
Помощь будет оценена.
Спасибо Бен
1 ответ
Лучший ответ
Это не работает, поскольку у вас есть связь (т.е. вы добавили таблицы в модель данных).
По моему опыту, вычисляемое поле очень полезно, когда вы работаете с одной таблицей без особой сложности.
В следующих сценариях «вычисляемое поле» будет отключено.
- Если сводная таблица основана на исходных данных OLAP
- Если у вас есть внешние источники данных
- Если вы нажмете «Добавить эти данные в модель данных» при создании сводной таблицы
Чтобы достичь того, чего вы хотите, вам нужно будет использовать «Мера».
Введите следующую формулу, которую я называю «Left to spend
«. (Sum of Budget
можно получить, перетащив «значения» поля Budget
в сводную таблицу, как вы уже сделали на экране печати):
=SUMX(Budget,[Sum of Budget]-[Sum of Amount])
Затем вы можете расположить свою сводную таблицу следующим образом:
5
Wizhi
20 Сен 2021 в 00:18
Hi all,
I want to understand why Excel consideres a pivot table grouped and how this could be resolved?
So I have a table with 10 columns, and I want to make a pivot table where only 3 cols are affected. Highlighted with blue, cols D, G and H.
Here is my pivot:
— columns D and G as rows
— H as values
Now if I want to add a calculated field, say, the ratio of «víz» and «limonádé», it tells me that I can not do that because the Pivot Table report field is grouped.
Now if I simply copy-paste only these columns to a separate ranges and create the very same pivot table from this, Excel has no problems with creating the calculated item.
So why can I add calculated Item from the second, and why can’t I add a calculated item from the first table? I obviously did not add a manual grouping, it is just putting multiple fields into the Rows.
Thank you for your explanation!
sample files attached:
sample — pivot item issue — 0.xlsx —> I created some pivot tables before this one, I deleted everything not needed. I tried to rebuild the cash, did not work.
sample — pivot item issue — success.xlsx —> I made a copy of the data sheet itself, and I wanted to make a pivot to reproduce the issue — and I failed… I can create a calculated item here. Hm…
Сводные таблицы в excel — уже сами по себе мощный инструмент работы с данными. Однако, использования стандартного функционала сводных таблиц может быть недостаточно. Иногда нужно произвести дополнительные вычисления и получить поля, которых нет в исходной таблице данных. Тогда на помощь приходят инструменты Вычисляемое поле и Вычисляемый объект для сводных таблиц Excel.
В этой статье:
- Что такое вычисляемое поле и для чего оно нужно
- Как создать вычисляемое поле в сводной таблице Excel
- Альтернатива № 1 вычисляемому полю: столбец с расчетом в исходной таблице
- Почему не всегда можно применять расчетный столбец для вычислений в сводной таблице
- Альтернатива № 2 вычисляемому полю: вычисления вне диапазона сводной таблицы
- Что такое вычисляемый объект
- Как создать вычисляемый объект
- Удаление и изменение вычислений в сводных таблицах
- Недостатки использования вычислений в сводных таблицах excel
- Как получить формулы вычислений
Что такое Вычисляемое поле и для чего оно нужно
Вычисляемое поле – это виртуальное поле данных, создаваемое в результате вычислений, основанных на существующих полях сводной таблицы. Другими словами, это данные, которые возникают в результате расчетов и попадают в готовом виде в сводную таблицу. В исходной таблице они не фиксируются. При этом, если в исходной таблице данных происходят изменения (например, добавились новые строки), вычисляемое поле также пересчитается.
Проще всего понять, как работает вычисляемое поле, на примере.
Имеем таблицу с данными о выручке в торговых точках сети магазинов.
В таблице есть данные о выручке и количестве чеков. Если нужно получить величину среднего чека для каждой торговой точки или для категории торговых точек, нужно выручку разделить на количество чеков. Для этой операции отлично подойдет инструмент Вычисляемое поле.
Для создания вычисляемого поля “Средний чек” используются имеющиеся в таблице поля “Выручка” и “Кол-во чеков”. Однако, поле “Средний чек” будет добавлено только в сводную таблицу, но в исходной таблице его не будет.
У вас может возникнуть резонный вопрос: а зачем морочить голову вычисляемыми полями, когда такой же столбец можно добавить в исходную таблицу? Иногда это действительно так. Но у такого метода есть ряд ограничений и недостатков. В первую очередь, иногда невозможно или неудобно внести изменения в исходную таблицу. Во-вторых, при следующем обновлении исходной таблицы в нее могут добавиться новые столбцы, и тогда ваши расчеты затрутся.
1) Для начала создадим сводную таблицу, в строки которой добавим категорию торговой точки. В значения — сумму по полю Выручка и сумму по полю Кол-во чеков.
2) Установим курсор на любой ячейке сводной таблицы и перейдем на вкладку Анализ — блок Вычисления — Поля, элементы и наборы — Вычисляемое поле…
3) Зададим имя вычисляемого поля. Оно не должно повторять ни одного наименования поля в исходной таблице.
4) Теперь напишем формулу, по которой вычисляемое поле будет производить расчет. Нам нужно поле Выручка разделить на поле Кол-во чеков.
Для этого в блоке Поля выделим поле Выручка и нажмем кнопку Добавить поле.
Оно появилось в поле Формула.
Теперь нужно написать оператор деления “/” и таким же образом указать поле Кол-во чеков.
В итоге получим такую формулу:
Если вы достаточно внимательны, то заметили, что название поля Выручка указано без кавычек, а название Кол-во чеков заключено в одинарные кавычки. Это связано в тем, что во втором случае (‘Кол-во чеков’) название поля состоит из нескольких слов. Excel автоматически проставляет эти кавычки, поэтому добавлять или убирать их вручную не нужно.
5) Осталось нажать Ок, и новое вычисляемое поле автоматически добавилось в таблицу. Немного поправим его формат (уберем хвост знаков после запятой), и вот что получилось.
При этом исходная таблица не изменилась, в ней по-прежнему нет поля Средний чек.
Альтернатива № 1 вычисляемому полю: столбец с расчетом в исходной таблице
В нашем случае можно использовать альтернативу вычисляемому полю. В исходной таблице данных добавим столбец Средний чек, в первой ячейке которого пропишем простейшую формулу: ячейку из столбца Выручка разделим на ячейку из столбца Средний чек.
Протянем формулу и заполним столбец (если вы делаете расчет в умной таблице, то формула скопируется автоматически до конца столбца)
Мы получили тот же средний чек, но только в разрезе каждой торговой точки. Если же нужно, как в предыдущем примере, получить средний чек по категории точек, то можно попробовать также сделать сводную таблицу.
И здесь мы подобрались к основной причине, почему такой способ — не всегда альтернатива полноценному вычисляемому полю.
Почему не всегда можно применять расчетный столбец для вычислений в сводной таблице
Теперь на основании этой таблицы создадим сводную. Набор полей такой же, как в предыдущем примере, только в поле Значения добавим еще вновь созданный Средний чек.
В столбце Средний чек получилась какая-то ерунда. Это потому, что по умолчанию excel просуммировал значения, нам же нужно получить среднее. Щелкнем по треугольнику возле Сумма по полю Средний чек и выберем Параметры полей значений.
Далее выберем Среднее.
Получили средний чек.
И снова самые внимательные заметят, что он не совпадает с тем Средний чеком, который мы получили при помощи вычисляемого поля. Да и если разделить значение из поля Выручка на Кол-во чеков — получим другие данные.
Делаем вывод, что при расчете среднего из средних значений данные могут получиться некорректными. Если не углубляться в статистику, причина тому — разный вес каждого среднего.
Альтернатива № 2 вычисляемому полю: вычисления вне диапазона сводной таблицы
Часто пользователи просто производят все необходимые вычисления рядом со сводной таблицей при помощи обычных формул.
Добавим столбец Средний чек рядом со сводной таблицей и в строке формул напишем формулу деления Выручки на Кол-во чеков. Даже форматирование сделаем, как в сводной.
Такой способ иногда оправдан — когда это временная таблица, и посчитать надо быстро. Однако, если это регулярный отчет, который может модифицироваться, то лучше им не пользоваться. Почему?
Представим ситуацию, что появилась новая категория торговой точки. Обновим сводную, и видим такую “красоту”. Итоги съехали, надо переделывать вручную.
А если нужно будет увеличить таблицу в ширину, добавив новую детализацию (например, адрес торговой точки), то и вовсе вычисления затрутся.
Таким образом, делаем вывод, что эта альтернатива рабочая, но только для “одноразовых” вычислений. Никак не для постоянных отчетов.
Что такое вычисляемый объект
Вычисляемый объект — это по сути строка вычисляемая строка данных. В отличие от вычисляемого поля, вычисляемый объект добавляет не столбец, а строку.
Также отличие в том, что вычисляемое поле работает со столбцами, а вычисляемый объект — со строками.
Эта операция похожа на группировку данных, и часто группировкой в сводной таблице ее можно заменить. Но часто группируемые строки не имеют общего признака, как в нашем примере ниже.
Как создать вычисляемый объект
Давайте разделим категории торговых точек на еще более укрупненные категории. В категорию “Большие точки” отнесем категории “Крупная” и “Выше среднего”. В категорию “Маленькие точки” — “Микро” и “Средняя”. Как видите, категории не имеют какого-то общего признака, по которому можно сделать агрегацию (точнее, он есть, но только в нашей голове).
Работать будем с той же сводной таблицей.
Щелкнем на любой ячейке в строке таблицы, которую будем группировать.
Важно: именно в строках, а не в числовых значениях!
Далее вкладка Анализ — блок Вычисления — Поля, элементы и наборы — Вычисляемый объект…
Поле, по которому будет делаться группировка, выделено автоматически. В правой части указаны элементы этого поля — в нашем случае категории точек из сводной таблицы.
Зададим имя объекта “Большие точки” и в поле Формула по аналогии с созданием вычисляемого поля зададим формулу. Использовать будем значения из поля Элементы и кнопку Добавить элемент.
Нажмем Ок, и получим группирующую строку внизу таблицы.
Аналогично сделаем вычисляемый объект для группы “Маленькие точки”. Также добавим ранее созданное вычисляемое поле Средний чек (для полноты картины).
Внизу таблицы располагаются созданные вычисляемые объекты.
Можете заметить, что общий итог в этом случае посчитан неправильно, потому что он суммирует вычисляемые объекты как отдельную строку. Поэтому нужно либо убрать общие итоги, либо оставить в таблице только вычисляемые объекты.
Удаление и изменение вычислений в сводных таблицах
Давайте для примера удалим вычисляемое поле Средний чек.
Откроем меню Вычисляемое поле.
Далее в выпадающем списке выберем поле, которое нужно удалить, и нажмем кнопку Удалить.
Готово, вычисляемое поле удалено.
Точно так же удаляется вычисляемый объект, только через соответствующий пункт меню.
Точно также можно внести изменения в вычисляемое поле (или объект). Нужно исправить формулу и нажать Ок, кнопку Удалить не нажимать.
Недостатки использования вычислений в сводных таблицах excel
Автоматизация вычислений при помощи вычисляемых полей или вычисляемых объектов имеет свои недостатки. Учитывайте их.
- Вычисления возможны только с данными из сводной таблицы. В них невозможно использовать данные, находящиеся за ее пределами. Даже данные из исходной таблицы, если они не добавлены в сводную — использовать нельзя.
- Вычисляемые объекты по умолчанию никак не выделяются и выглядят как обычная строка. Следовательно, их легко спутать со строкой, и нужно применять дополнительные методы форматирования, например, условное форматирование.
- Некорректный расчет общих итогов при создании вычисляемых объектов (строк).
Как получить формулы вычислений
Чтобы узнать, какие вычисления производились в сводной таблице, нужно щелкнуть в любой ее ячейке, далее вклдака Анализ — блок Вычисления — Поля, элементы и наборы — Вывести формулы
Формулы откроются на отдельном листе.
Это очень полезный инструмент, особенно, когда сводная таблица имеет большое количество вычислений. Или когда автор таблицы не вы, и нужно разобраться в расчетах.
Таким образом, мы прокачали свои навыки работы со сводными таблицами. Их можно использовать, например, при создании отчетов или интерактивных дашбордов.
Сообщество Excel Analytics | обучение Excel
Канал на Яндекс.Дзен
Вам может быть интересно: