2016-07-26 4 views
0

Я измеряю использование помещения (время/время) из дампа данных. Каждая строка содержит доступное время для дня и время, используемое для конкретного случая. Изображение представляет собой упрощенную версию данных.Сумма средних значений в таблице сводной таблицы Excel

Если вы читаете желтые и зеленые блики (номер 1):

  • В комнате 1, есть 200 доступных минут на 1/1/2016.
  • Корпус 1 занял 60 минут, корпус 2 занял 50 минут.
  • Есть 500 доступных минут на 1/2/2016, и только один случай произошел в этот день, используя 350 минут.

Room 1 utilization = (60 + 50 + 350)/(200 + 500)

Проблемы с суммированием доступного времени является то, что он двойной подсчитывает 200 минут для 1/1/2016, придающий: Utilization = (60+50+350)/(200+200+500)

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

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

Sum of Averages in Pivot Table

ответ

1

Причина, по которой вы получаете 300 для столбцов Average of Available Time, потому что общая сумма является общей суммой, основанной на общем средстве, а не на сумме средних значений.

  • номер 1: 200 + 200 + 500/3 = 300
  • номер 2: 300 + 300 + 300/3 = 300

я не мог комментировать оригинальный вопрос , поэтому мое решение основано на нескольких предположениях.

Успение № 1: данные всегда будут сгруппированы. НАПРИМЕР. Все случаи в комнате 1 в определенный день будут сгруппированы в последовательные строки.

Успение № 2: Доступный столбец времени является единственным значением за весь день, в тот же день не будет отличаться доступным временем.


Решение: Используйте столбец E в качестве фактического времени поступления. Этот столбец будет использовать формулу, чтобы определить, имеет ли текущая строка уникальную комбинацию (Date + Room + Available Time) предыдущей, и если да, то ячейка будет содержать доступное время этой строки.

Формула для использования в E2:

=IF(AND($A1 = $A2, $B1 = $B2, $C1 = $C2), 0, $C2) 

Продлить формулу далеко вниз по мере необходимости, а затем включить новый столбец в сводной таблицы диапазона данных.


End Result

+0

Мы пришли к аналогичному решению: мы отсортировали данные по номеру, а затем по дате. Дополнительный столбец и оператор if проверяет идентичные даты, а затем создает пробел, если есть «доступные времена», которые не должны учитываться. Вы, кстати, были правы в своих предположениях, и, может быть, вы сможете прокомментировать после того, как я приму ответ! – henrythedj

+0

Мы смотрим только на дату в инструкции if, поэтому формулу можно технически сломать, если бы у нас был только один день данных из комнаты за месяц, и если бы следующая комната работала в этот день. Знаменитые последние слова: НЕ ДОЛЖНЫ когда-либо происходить. Возможно, мы построим отказоустойчивость: P – henrythedj

+1

@Henry Harding McCall Я не мог комментировать, потому что у меня не было репутации. Приятно было услышать, что у вас есть аналогичное решение. Что касается отказоустойчивости, лично я бы включил его, но это только я и моя склонность быть осторожными. –

0

Я создал уникальную ссылку путем объединения столбцов, а затем использовал SUMIF/СЧЕТЕЛ/СЧЕТЕЛ.

Таким образом, формула в колонке Е будет: = SUMIF (colB, cellB, ColC)/СЧЕТЕСЛИ (colB, CELLE)/СЧЕТЕСЛИ (colB, CELLE)

Не имеет значения, если данные в порядок или нет.

Расширьте формулу как можно дальше, а затем включите новый столбец в диапазон данных сводной таблицы.

Смежные вопросы