Среднее вычисление PowerPivot Excel

57
4

У меня возникают трудности с определением того, как производить вычисление средних значений, которые могут быть построены на PivotChart.

В частности, я хочу сравнить эффективность Sales Rep (валовая прибыль по месяцам/годам) со всеми другими представителями (с использованием среднего), которые находятся в сопоставимой роли (той же рабочей группе) за определенный период.

Скажем, структура данных выглядит так:

SaleID      SaleLocation        SaleType        SalesRep        SaleDate        WorkGroup       SalesGP
1 Retail1 Car John A 01/01/2014 Sales $301
2 HQ Bike John A 01/01/2014 Sales $200
3 Retail1 Car Sam L 02/01/2014 Sales $1300
4 Retail2 Plane Sam L 02/01/2014 Sales $72
5 Retail2 Plane Vince T 03/01/2014 Admin $55
6 Retail2 Bike John A 04/01/2014 Sales $39
7 HQ Car Vince T 05/01/2014 Admin $2154
....etc

В модели данных excel я добавил расчетные поля (которые используют таблицу поиска) для даты продажи, так что продажи могут быть построены по месяцам или годам (например, = YEAR ([SaleDate]) и = MONTH ([SaleDate]) )

В качестве примера предположим, что я хочу заговорить кого-то GP (Gross Profit) в течение определенного периода времени:

enter image description here

Мой вопрос...

Как я могу рассчитать "среднюю валовую прибыль", которую я могу построить на PivotChart? Эта "средняя валовая прибыль" должна быть средней для всех продаж за тот же период для одной и той же рабочей группы.

В приведенном выше примере, в PivotChart, я хочу построить "среднюю" серию, которая рассчитывает средний GP по месяцам для всех SalesReps, которые находятся в той же рабочей группе, что и John A ("Sales").

Если мой запрос недостаточно ясен, сообщите мне, и я сделаю все возможное, чтобы его расширить.

спросил(а) 2014-02-24T07:29:00+04:00 6 лет, 7 месяцев назад
1
Решение
120

Зам, это должно быть довольно легко. Вам просто нужно создать новое вычисляемое поле, которое вычисляет среднее значение для ВСЕХ продаж.

Позвольте мне провести вас через это:

Я использовал вашу таблицу данных, а затем добавил ее в свой PowerPivot (Excel 2013). Затем я создал эти рассчитанные меры:

1. Средние продажи:

=AVERAGE(SalesData[SalesGP])

2. Sales Average ALL - это будет вычислять среднее значение для ВСЕХ строк в таблице и будет использоваться в других вычислениях. Обратите внимание: я использовал первое вычисленное поле в качестве первого параметра, чтобы сделать это гибким:

=CALCULATE([Sales Amount Average],ALL(SalesData))

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

=IF([Sales Amount Average] > 0, [Sales Amount Average] / [Sales Average ALL] -1)

В основном, это то, что сначала он проверяет, есть ли у них существующий расчет для торгового представителя, если тогда он делит Sales Average для данного торгового представителя на среднюю сумму продажи для ВСЕХ торговых представителей. И затем я вычитаю 1, чтобы производительность можно было легко понять, просто посмотрев проценты.

Чтобы было легко понять, я решил использовать гистограммы в условном форматировании вместо автономной графической диаграммы - я считаю, что она делает именно то, что вам нужно:

enter image description here

На рисунке выше первая таблица представляет ваши данные. Вторая таблица - фактическая таблица powerpivot и показывает то, что я описал.

Надеюсь это поможет!

РЕДАКТИРОВАТЬ

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

=IF(HASONEVALUE(SalesData[SalesRep]),
IF([Sales Amount Average] > 0,
[Sales Amount Average] / [Sales Average ALL] -1),
BLANK()
)

EDIT - ДОБАВЛЕННОЕ СРЕДНЕЕ СРАВНЕНИЕ ДЛЯ РАБОТНИКОВ

Чтобы рассчитать производительность каждой рабочей группы, а не ВСЕ торгового представителя, добавьте эти две меры:

4. Средние продажи за рабочую группу

=CALCULATE(AVERAGE(SalesData[SalesGP]),ALL(SalesData[SalesRep]))

Это рассчитает среднюю продажу на рабочую группу (не путайте с использованием функции SalesRep во ВСЕХ, это связано с контекстом фильтра).

5. Продажи Diff до среднего за рабочую группу

=IF(HASONEVALUE(SalesData[SalesRep]),IF([Sales Amount Average] > 0, [Sales Amount Average] - [Sales Average per Workgroup]),BLANK())

Это просто вычисляет разницу между средней продажей данной продажи и средней продажей на рабочую группу. Результат может выглядеть следующим образом:

enter image description here

Я загрузил исходный файл в свою общедоступную папку Dropbox.

ответил(а) 2014-03-09T20:05:00+04:00 6 лет, 6 месяцев назад
Ваш ответ
Введите минимум 50 символов
Чтобы , пожалуйста,
Выберите тему жалобы:

Другая проблема