Использование промежуточного итога группы столбцов в формуле вычисляемого поля

Я собираю данные в таблицу Excel с помощью Power Query, а затем представляю их в сводной таблице.

В сводной таблице есть одно поле, включенное в область «Столбцы», в результате чего отдельные значения в этом поле переносятся в заголовок в виде столбцов, что позволяет мне суммировать другое поле, но сгруппировано по каждому из этих значений, все как обычно и ожидаемо.

Но теперь я также сгруппировал эти отдельные значения в две группы и отобразил промежуточные итоги столбца для каждой группы, что также отлично работает.

Но, наконец, я хочу добавить в таблицу дополнительный столбец, показывающий общий итог как долю одного из двух промежуточных итогов столбца, и я просто не могу найти способ сделать это.

Я пробовал искать встроенные функции сводной таблицы, но ничего не нашел. Вместо этого я также попытался добавить таблицу исходных данных в модель данных и использовать Power Pivot для создания меры для достижения этой цели, но опять же безуспешно.

Чтобы проиллюстрировать это, приведем минимальный пример с некоторыми фиктивными данными — сначала некоторые исходные данные в таблице:

Обновлено: В соответствии с просьбой, вот фиктивные исходные данные в текстовой форме:

Проект № Имя Клиента Документ № Дата публикации Номер счета Количество Отделение P001 АКМЕ Инк. ПОР-001 01.01.2024 5010 300,00 фунтов стерлингов Операции P001 АКМЕ Инк. ПОР-002 01.03.2024 5020 £100,00 Операции P001 АКМЕ Инк. ИНВ-001 01.05.2024 4010 - £500,00 Операции P001 АКМЕ Инк. ИНВ-002 01.08.2024 4010 - £200,00 Электрический P001 АКМЕ Инк. ИНВ-003 01.09.2024 4010 - £100,00 Электрический P001 АКМЕ Инк. ПОР-003 01.09.2024 5030 700,00 фунтов стерлингов Операции P001 АКМЕ Инк. ИНВ-004 01.12.2024 4010 - £950,00 Операции P001 АКМЕ Инк. ПОР-004 01.13.2024 5010 150,00 фунтов стерлингов Операции P001 АКМЕ Инк. CRD-001 01.13.2024 4050 - £200,00 Операции P001 АКМЕ Инк. ИНВ-005 01.15.2024 4010 - £250,00 Электрический P001 АКМЕ Инк. CRD-002 01.16.2024 4050 - £50,00 Электрический P002 СО, ООО ПОР-005 01.02.2024 5040 850,00 фунтов стерлингов Операции P002 СО, ООО ИНВ-006 01.04.2024 4010 - £1000,00 Электрический P002 СО, ООО ИНВ-007 01.12.2024 4010 - £250,00 Электрический P002 СО, ООО ПОР-006 01.18.2024 5020 300,00 фунтов стерлингов Операции P002 СО, ООО ИНВ-008 01.20.2024 4010 - £475,00 Электрический P002 СО, ООО ПОР-007 01.22.2024 5030 250,00 фунтов стерлингов Электрический P002 СО, ООО ПОР-008 01.25.2024 5010 275,00 фунтов стерлингов Операции P002 СО, ООО ПОР-009 01.26.2024 5010 290,00 фунтов стерлингов Операции P002 СО, ООО ПОР-010 01.26.2024 5030 £625,00 Электрический P002 СО, ООО ПОР-011 01.27.2024 5020 £125,00 Электрический P002 СО, ООО ПОР-012 01.28.2024 5020 50,00 фунтов стерлингов Операции P002 СО, ООО ИНВ-009 01.29.2024 4010 - £2500,00 Операции P002 СО, ООО CRD-003 01.29.2024 4050 - £250,00 Электрический P002 СО, ООО CRD-004 01.29.2024 4050 - £150,00 Операции

Полный файл .xlsx, который я использовал для этого примера, также доступен для скачивания здесь.

И как выглядит моя сводная таблица:

Итак, моя настройка сводной таблицы выглядит следующим образом:

Поле «Счет №2» в области «Столбцы» появилось только после того, как я сгруппировал столбцы по «Доходу» и «Себестоимости продаж».

Итак, чего я хочу достичь, так это процента валовой прибыли, который будет отображаться в каждой строке, независимо от того, что расширяется/сжимается, вот так:

или вот так, если я свернусь до Customer:

По сути, валовая прибыль в % для проекта P001 составляет 1000/2250, а для P002 — 1860/4625 (и аналогично для цифр, показанных при расширении отдела, показывающих валовую прибыль на отдел для этого проекта, а не для всего проекта в целом), поэтому я пытаюсь найти способ показать вычисляемое поле или подобное, которое может выполнить этот расчет, и включить его в мою сводную таблицу.

Надеюсь, кто-то уже сталкивался с подобной проблемой и может предложить несколько советов! Файл примера, который я использовал для создания этих снимков экрана, можно скачать здесь, если будет полезно поиграться с моими фиктивными данными и сводной таблицей.

Чтобы данные были полезными, отредактируйте свой вопрос и опубликуйте его в виде текста, возможно, используя этот Генератор таблиц разметки.

Ron Rosenfeld 14.06.2024 02:39

Спасибо, Рон, я сделаю это сейчас, хотя полный файл .xlsx также прилагается, если люди захотят его загрузить и попытаться мне помочь.

3N1GM4 14.06.2024 13:27

Рассматривали ли вы возможность использования диапазонов разливов вместо сводных таблиц? Может быть, лучше для того, что вы делаете, или использование сводной таблицы является абсолютным требованием? Вы могли бы создать диапазоны разлива с вашими уникальными строками/столбцами, а затем использовать countifs/averageifs/sumifs и т. д. для агрегирования данных, а не сводной таблицы?

Andy Robertson 21.06.2024 14:29

@AndyRobertson - нет, я раньше не сталкивался с диапазонами разливов - я погуглю и посмотрю, спасибо.

3N1GM4 24.06.2024 10:37
Преобразование HTML-таблицы в профессиональный документ Excel
Преобразование HTML-таблицы в профессиональный документ Excel
Это самый простой способ создания Excel из HTML-таблицы.
Импорт excel в laravel в базу данных
Импорт excel в laravel в базу данных
Здравствуйте, дорогой читатель, в этой статье я расскажу практическим и быстрым способом, как импортировать файл Excel в вашу базу данных с помощью...
0
4
138
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

У вас должна быть возможность добавлять столбцы в запрос мощности. После импорта данных добавьте настраиваемый столбец с нужными вычислениями. Как только у вас появится новый столбец, он будет логически связан с конкретным номером документа и поэтому должен отображаться в отчете сводной таблицы.

Проблема в том, что у меня есть строки, транспонированные в столбцы сводной таблицы, и именно значения в этих столбцах я хочу выполнить вычисления, поэтому эти значения недоступны мне на этапе получения данных Power Query. Взгляните на фиктивный пример, который я привел в вопросе, и если вы сможете реализовать что-то, что работает, дайте мне знать!

3N1GM4 19.06.2024 09:43

@3N1GM4 какие строки/столбцы переставлены?

bdpolinsky 20.06.2024 16:18

все столбцы «Нет учетной записи» в соответствии с примером, прикрепленным к моему вопросу, и подробностями, указанными в вопросе.

3N1GM4 24.06.2024 10:36
Ответ принят как подходящий

Добавьте два столбца в таблицу исходных данных. Составив формулы следующим образом:

Счет-фактура Вал =IF([@Amount]<0,ABS([@Amount]),"")

ПО Вал =ЕСЛИ([@Сумма]>0,[@Сумма],"")

В сводную таблицу добавьте вычисляемые поля. =ABS(Сумма)/ЗначениеСчета Это должно дать вам процент от абсолютной суммы, которую затем нужно отформатировать в процентах.

На самом деле вам не нужен столбец PO Val в исходных данных! Извиняюсь за это.

Andy Robertson 21.06.2024 16:15

Спасибо, Энди, я попробую сегодня, приму твой ответ и назначу награду, если это сработает для меня.

3N1GM4 24.06.2024 10:47

Это работает, и это здорово. Можете ли вы просто помочь мне с тем, как я могу скрыть все дополнительные столбцы, которые добавляются в сводную таблицу при добавлении этого вычисляемого поля? Я просто хочу увидеть окончательную маржу для каждой строки («Общая сумма теста» в вашем примере), а не все отдельные столбцы «Сумма теста», которые также появляются...

3N1GM4 24.06.2024 12:41

Я понимаю, что мог бы просто скрыть их в Excel обычным способом, но набор возможных транспонированных столбцов несколько динамичен, поэтому я не думаю, что это сработает.

3N1GM4 24.06.2024 12:51

Извините, некоторое время отсутствовал. Спасибо, что приняли ответ, удалось ли вам скрыть то, чего вы не хотели? Я думаю, вам, вероятно, просто нужно удалить промежуточные итоги в различных полях, но я еще не проверял это. Быстро осмотрю и вернусь.

Andy Robertson 01.07.2024 15:51

Привет, Энди, я только что пошел по пути скрытия традиционным способом в Excel, но если вы можете предложить более элегантное решение, я был бы очень признателен. Спасибо!

3N1GM4 04.07.2024 11:13

Другие вопросы по теме