Суммирование отдельных экземпляров значения времени с помощью двух критериев

#excel #excel-formula

Вопрос:

Я умираю здесь, и мне действительно нужна помощь. Я надрываюсь над этим уже день или два и не знаю, что делать дальше.

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

Мне нужно подсчитать общее количество часов, отработанных каждым техником за весь период. Например, в приведенном ниже примере Боб работал восемь часов, в то время как Джим работал шесть.

                    TOTAL
TECH   DATE      DAILY HOURS
----------------------------
Bob    01/03/21    03:00
Bob    01/03/21    03:00
Bob    01/03/21    03:00
Bob    02/03/21    02:00
Bob    03/03/21    03:00
Jim    01/03/21    03:00
Jim    02/03/21    02:00
Jim    02/03/21    02:00
Jim    02/03/21    02:00
Jim    02/03/21    02:00
Jim    03/03/21    01:00
 

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

Любая помощь будет очень признательна.

Ваше здоровье.

Комментарии:

1. Какая у вас версия Excel?

2. В зависимости от вашей версии Excel вы можете легко сделать это с помощью Power Query или (если это Office 365) с помощью формул.

3. У меня есть Office 365.

Ответ №1:

Некоторое время назад у меня была аналогичная проблема, и я нашел довольно грубое решение следующим образом:

  • в новом столбце (который я скрыл впоследствии) создайте функцию, возвращающую значение TRUE в первом экземпляре каждой уникальной комбинации для проверки (где «комбинация» может быть «Боб 01/03» или «Джим 03/03»).
  • Затем для ваших общих итогов выполните а SUMIF , основываясь только на тех значениях, которые возвращает этот вспомогательный столбец.

В вашем примере это может выглядеть так:

  • ваш вспомогательный столбец-Z. Вышеуказанные столбцы-A, B и C. Строка 1 содержит заголовки.
  • В Z2 вы вставляете формулу =IF(COUNTIFS($A$2:$A2, $A2, $B$2:$B2, $B2) = 0, TRUE, "") , а затем копируете/автоматически заполняете ее вниз, насколько это необходимо. Проверьте результат, он должен возвращаться TRUE при первой записи на одного техника в день.
  • Затем, если где — то еще на вашем листе вам нужна сумма того, что сделал Боб, вы делаете =SUMIFS($C:$C, $A:$A, "Bob", $Z:$Z, TRUE) , то есть сумма всех случаев, когда техник-боб, а вспомогательная колонка верна.