Другая формула, которая может быть вашим другом - это AVERAGEIF или AVERAGEIFS.
Мой подход использует SUMPRODUCT, который будет выполнять вычисления, подобные массиву, не будучи массивом.
1) Постройте таблицу средних
В моем примере я перечислил номер месяца для каждого месяца независимо от года от E2 до E13. В соседнем столбце используйте следующую формулу в F2 и скопируйте вниз в F13.
=IFERROR(SUMPRODUCT((--RIGHT($A$2:$A$11,2)=E2)*$B$2:$B$11)/SUMPRODUCT(--(--RIGHT($A$2:$A$11,2)=E2)),"")
Функция IFERROR используется для устранения ошибки деления на 0, которая возникнет, если для данного месяца не будет значения. Если вы предпочитаете видеть 0 вместо пробела, измените "" в конце на 0.
Приведенная выше формула основана на предположении, что ваши даты на самом деле являются строками. Если они на самом деле даты, используйте следующее:
=IFERROR(SUMPRODUCT((MONTH($A$2:$A$11)=E2)*$B$2:$B$11)/SUMPRODUCT(--(MONTH($A$2:$A$11)=E2),"")
2) Найти максимальное среднее
В приведенном ниже примере я использовал следующую формулу в I2:
=MAX($F$2:$F$13)
3) Найти соответствующий месяц
В J2 я использовал следующую формулу для поиска позиции максимального значения в списке. Если их максимумы повторяются / связаны, возвращается первый месяц.
=MATCH(I2,$F$2:$F$13,0)