2009-10-28 3 views
2

У меня есть значения в столбце c, которые я хочу усреднить, если они произошли за последние семь дней (соответствующие даты в столбце a). я не могу заставить функцию averageif работать правильно, так как мне нужно, чтобы каждый отдельный фрагмент данных оценивался отдельно, если он попадал в течение последних семи дней. это похоже на функцию, которая будет использоваться все время, но я googled в течение 45 минут и ничего не мог найти.Excel AVERAGEIF с функцией СЕГОДНЯ() как критерии

+0

Как насчет некоторых данных образца - просто так ясно, что вы все просите. –

+0

Мне нужно найти среднее значение данных в столбце C за последние семь дней (у меня есть данные за последние несколько месяцев). Дата указывается для каждой из записей в электронной таблице в столбце A. Мне кажется, что это должен быть какой-то тип функции AVERAGEIF. – Cameron

ответ

4

У меня нет Excel 2007, чтобы проверить, но я дам ему выстрелили:

= AVERAGEIF($A$2:$A$100, ">=" & (TODAY()-6), $C$2:$C$100) 

Я предполагаю, «последние 7 дней» означает, что по сравнению с сегодняшними(), а не по сравнению с какой-либо другой ряд данных?

Используйте NOW() вместо TODAY() и «-7» вместо «-6», если вы хотите чувствительность по времени, а не просто смотреть на сегодня и что-либо обратно до 6 дней назад (т. Е. В общей сложности 7 дней).

Если каждая строка данных должна иметь в среднем за последние 7 дней по сравнению с самим, а не по сравнению с сегодня (то есть, вы хотите другой скользящее среднее в каждой строке), использовать что-то вроде:

= AVERAGEIF($A$2:$A$100, ">=" & ($A2-7), $C$2:$C$100) 

в строке 2 и вставьте вниз, $ A2 настроится на использование контрольной точки даты/времени текущей строки. Если даты уже отсортированы, вы можете оптимизировать формулу, используя $ A2 и $ C2 вместо $ A $ 100 и $ C $ 100 (вставка вниз увеличит диапазон для каждой дополнительной строки).

+0

Вторая функция не работает, так как она будет усреднять каждое значение, превышающее 7 дней с даты текущей строки. Который включает последние 7 дней и каждый день в наборе данных после него. – jcmcbeth

+0

Хороший улов, @jcmcbeth. Поскольку 'AVERAGEIF' не имеет оператора« между », я думаю, что для решения потребуется формула массива, а не' AVERAGEIF'. – richardtallent

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