Что такое функция AVERAGE в Excel и зачем она нужна
Функция AVERAGE в Microsoft Excel — это один из самых востребованных инструментов для анализа данных. Она вычисляет среднее арифметическое заданного набора чисел, что позволяет быстро оценивать центральную тенденцию в массиве значений. Например, вы можете узнать среднюю зарплату в отделе, средний чек покупателя за месяц или среднюю температуру за неделю.
В отличие от ручного подсчёта (когда приходится суммировать все числа и делить на их количество), AVERAGE автоматизирует процесс. Достаточно указать диапазон ячеек или перечислить аргументы — и Excel мгновенно вернёт результат. Функция работает не только с отдельными числами, но и с массивами, ссылками на ячейки и даже именами диапазонов.
Где это пригодится на практике? Вообразите, что вы анализируете продажи за квартал. Вместо того чтобы вручную складывать выручку по каждому дню и делить на 90, достаточно ввести =AVERAGE(B2:B91) — и получите среднедневной оборот. Или представьте отчёт по оценкам студентов: одна формула покажет средний балл по группе.
Синтаксис функции AVERAGE: разбираем аргументы
Формула AVERAGE имеет простой, но гибкий синтаксис:
=AVERAGE(число1; [число2]; ...)
Где:
- 📌
число1— обязательный аргумент. Это может быть число, ссылка на ячейку (например,A1), диапазон (например,B2:B10) или имя диапазона (например,Продажи). - 📌
[число2]; ...— необязательные дополнительные аргументы (до 255 штук). Их можно добавлять через точку с запятой.
Ключевые особенности:
- 🔢 Функция игнорирует пустые ячейки и текстовые значения (например, если в диапазоне есть ячейка с словом "Итого", она не повлияет на расчёт).
- ⚠️ Логические значения (
ИСТИНА/ЛОЖЬ) и текстовые представления чисел (например,"100"в кавычках) не учитываются. - 📊 Если аргумент — это ошибка (например,
#ДЕЛ/0!), функция вернёт ту же ошибку.
Пример с разными типами аргументов:
=AVERAGE(10; A2; B2:B5; Итоги!C1:C10)
Здесь формула посчитает среднее для:
- 🔹 Числа
10; - 🔹 Значения в ячейке
A2; - 🔹 Диапазона
B2:B5; - 🔹 Диапазона
C1:C10на листе Итоги.
Практические примеры использования AVERAGE
Рассмотрим реальные сценарии, где AVERAGE экономит время и силы.
Пример 1: Средняя зарплата по отделу
Допустим, у вас есть таблица с окладами сотрудников в столбце B (с B2 по B11). Чтобы узнать среднюю зарплату:
=AVERAGE(B2:B11)
Если в списке есть пустые ячейки (например, уволенные сотрудники), функция их проигнорирует.
Пример 2: Средний балл студента
Представьте таблицу с оценками по предметам в строках C2:F2. Формула:
=AVERAGE(C2:F2)
Добавим условную проверку: если средний балл ≥ 4.5, выведем "Отличник", иначе — "Хорошист". Для этого обернём AVERAGE в ЕСЛИ:
=ЕСЛИ(AVERAGE(C2:F2)>=4.5; "Отличник"; "Хорошист")
Пример 3: Средняя температура по больнице
В медицинской статистике часто считают среднюю температуру пациентов. Если данные записаны в D2:D100, но некоторые ячейки пусты (пациенты без жара), формула:
=AVERAGE(D2:D100)
Она автоматически проигнорирует пустые значения.
Убедитесь, что в диапазоне нет текстовых значений (кроме пустых ячеек)
Проверьте, нет ли ошибок (#ДЕЛ/0!, #ЗНАЧ!) в данных
Если нужны только видимые ячейки, используйте SUBTOTAL вместо AVERAGE
Для взвешенного среднего применяйте СУММПРОИЗВ вместо AVERAGE-->
Распространённые ошибки и как их избежать
Даже с простой функцией можно столкнуться с неожиданными результатами. Разберём типичные ловушки.
⚠️ Внимание: Если в диапазоне есть ячейка с ошибкой (например,#ДЕЛ/0!), функцияAVERAGEвернёт ту же ошибку. Чтобы обойти это, используйтеАГРЕГАТилиЕСЛИОШИБКА.
Ошибка 1: Текст вместо чисел
Если в диапазоне есть ячейка с текстом (например, "Н/Д"), AVERAGE её проигнорирует. Но если текст выглядит как число (например, "100"), оно тоже не будет учтено. Решение:
- 🔧 Преобразуйте текст в числа с помощью
ЗНАЧЕН:
=AVERAGE(ЗНАЧЕН(A1:A10))
СУММ и СЧЁТ:=СУММ(A1:A10)/СЧЁТ(A1:A10)
Ошибка 2: Нулевые значения искажают результат
Если в данных есть нули (например, дни без продаж), они снижают среднее. Чтобы их исключить:
=СУММПРОИЗВ(A1:A10; --(A1:A10<>0))/СЧЁТЕСЛИ(A1:A10; "<>0")
Ошибка 3: Диапазон с формулами, возвращающими текст
Если в ячейках формулы типа =ЕСЛИ(B2=0; "Нет данных"; B2), текст "Нет данных" будет проигнорован. Чтобы учитывать только числовые результаты таких формул, используйте:
=СРЗНАЧ(ЕСЛИОШИБКА(ЗНАЧЕН(A1:A10); ""))
(Введите как формулу массива в старых версиях Excel с Ctrl+Shift+Enter.)
| Ошибка | Причина | Решение |
|---|---|---|
#ДЕЛ/0! |
Все ячейки в диапазоне пустые или содержат текст | Проверьте данные или используйте ЕСЛИОШИБКА |
#ЗНАЧ! |
Аргумент содержит текст, который нельзя преобразовать в число | Используйте ЗНАЧЕН или очистите данные |
| Некорректное среднее | В диапазоне есть скрытые символы (пробелы, неразрывные пробелы) | Примените СЖПРОБЕЛЫ или ПЕЧСИМВ для очистки |
AVERAGE vs AVERAGEA vs AVERAGEIF: когда что использовать
В Excel есть три похожие функции для расчёта среднего. Разберём их различия.
1. AVERAGE — классическая функция, игнорирует пустые ячейки и текст.
2. AVERAGEA — учитывает все значения, включая:
- 🔹
ИСТИНАкак1; - 🔹
ЛОЖЬкак0; - 🔹 Текстовые представления чисел (например, "5");
- 🔹 Пустые ячейки как
0.
Пример: =AVERAGEA(A1:A5) для ячеек с значениями 10, ИСТИНА, "", 20, "30" вернёт (10 + 1 + 0 + 20 + 30)/5 = 12.2.
3. AVERAGEIF — рассчитывает среднее с условием. Синтаксис:
=AVERAGEIF(диапазон; условие; [диапазон_усреднения])
Пример: средний чек только по покупкам > 1000 ₽:
=AVERAGEIF(B2:B100; ">1000")
4. AVERAGEIFS — расширенная версия с несколькими условиями:
=AVERAGEIFS(диапазон_усреднения; диапазон1; условие1; ...)
Пример: средняя зарплата мужчин старше 30 лет:
=AVERAGEIFS(D2:D100; B2:B100; "М"; C2:C100; ">30")
Продвинутые приёмы: AVERAGE с массивами и динамическими диапазонами
Для опытных пользователей AVERAGE может работать с динамическими массивами и условной логикой.
1. Среднее по нескольким условиям (без AVERAGEIFS)
Если вам нужно усреднить значения, соответствующие двум и более условиям, но AVERAGEIFS недоступен (например, в старых версиях Excel), используйте:
=СУММПРОИЗВ(--(A2:A10="Да"); --(B2:B10>100); C2:C10)/СЧЁТЕСЛИМНГ(A2:A10; "Да"; B2:B10; ">100")
Эта формула посчитает среднее по столбцу C, где в столбце A стоит "Да", а в B — число > 100.
2. Среднее по последним N значениям
Допустим, вам нужно среднее по последним 5 продажам в динамическом списке. Используйте:
=СРЗНАЧ(ИНДЕКС(B:B; СЧЁТЗ(B:B)-4):ИНДЕКС(B:B; СЧЁТЗ(B:B)))
Здесь СЧЁТЗ(B:B) находит последнюю непустую ячейку, а ИНДЕКС выделяет диапазон из 5 ячеек до неё.
3. Взвешенное среднее
Если данные имеют разный "вес" (например, средняя оценка с учётом кредитов предметов), используйте СУММПРОИЗВ:
=СУММПРОИЗВ(A2:A10; B2:B10)/СУММ(B2:B10)
Где A2:A10 — оценки, а B2:B10 — их веса (например, количество кредитов).
Как ускорить расчёты с AVERAGE в больших таблицах?
Для таблиц с десятками тысяч строк замените AVERAGE на СУММ/СЧЁТ — это сократит время пересчёта.
Пример: =СУММ(B2:B100000)/СЧЁТ(B2:B100000) работает быстрее, чем =AVERAGE(B2:B100000).
Альтернативы AVERAGE: когда стандартная функция не подходит
Иногда AVERAGE не справляется с задачей. Рассмотрим альтернативы.
1. MEDIAN — медиана (серединное значение). Полезна, если в данных есть выбросы (например, одна очень высокая зарплата искажает среднее).
Пример: =MEDIAN(A1:A10).
2. MODE — мода (наиболее частое значение). Подходит для анализа популярности.
Пример: =MODE.SNGL(B2:B100) (в новых версиях Excel).
3. TRIMMEAN — усечённое среднее, игнорирует крайние значения (например, 10% самых высоких и низких).
Пример: =TRIMMEAN(A1:A10; 0.2) — отсечёт по 20% с каждого конца.
4. HARMEAN и GEOMEAN — гармоническое и геометрическое среднее. Используются в статистике и финансах.
Пример для средней скорости (гармоническое среднее):
=HARMEAN(A2:A10)
| Функция | Когда использовать | Пример |
|---|---|---|
MEDIAN |
Есть выбросы в данных | =MEDIAN(A1:A10) |
MODE.SNGL |
Нужно найти самое частое значение | =MODE.SNGL(B2:B100) |
TRIMMEAN |
Нужно исключить крайние 10-20% значений | =TRIMMEAN(C2:C50; 0.1) |
AGGREGATE |
Нужно игнорировать ошибки и скрытые строки | =AGGREGATE(1; 6; A1:A10) |
⚠️ Внимание: ФункцияMODEв Excel 2019 и новее заменена наMODE.SNGL(возвращает одно значение) иMODE.MULT(возвращает массив самых частых значений). В старых версиях используйтеMODE.
FAQ: Ответы на частые вопросы об AVERAGE
Можно ли использовать AVERAGE для текста?
Нет, функция AVERAGE работает только с числовыми данными. Текстовые значения (включая даты в текстовом формате) игнорируются. Если нужно преобразовать текст в числа, используйте ЗНАЧЕН:
=AVERAGE(ЗНАЧЕН(A1:A10))
Почему AVERAGE возвращает #ДЕЛ/0!?
Эта ошибка появляется, если:
- 🔸 В диапазоне нет ни одного числового значения (все ячейки пустые или содержат текст);
- 🔸 Все числа в диапазоне — это нули (деление на ноль);
- 🔸 Диапазон содержит ошибку (например, #Н/Д).
Решение: проверьте данные или используйте ЕСЛИОШИБКА:
=ЕСЛИОШИБКА(AVERAGE(A1:A10); 0)
Как посчитать среднее без учёта нулей?
Используйте комбинацию СУММПРОИЗВ и СЧЁТЕСЛИ:
=СУММПРОИЗВ(A1:A10; --(A1:A10<>0))/СЧЁТЕСЛИ(A1:A10; "<>0")
Или в Excel 365:
=СРЗНАЧ(ФИЛЬТР(A1:A10; A1:A10<>0))
Можно ли усреднить данные по цвету ячейки?
Стандартные функции Excel не умеют работать с цветами. Но есть обходные пути:
- 🔹 Используйте условное форматирование + вспомогательный столбец с формулой
=ПОЛУЧИТЬ.ЦВЕТ.ЯЧЕЙКИ(A1)(требует VBA). - 🔹 Вручную отфильтруйте данные по цвету и примените
AVERAGEк видимым ячейкам с помощьюSUBTOTAL.
Как посчитать среднее по нескольким листам?
Укажите диапазоны с названиями листов:
=AVERAGE(Лист1!A1:A10; Лист2!A1:A10; Лист3!A1:A10)
Или используйте 3D-ссылки:
=СРЗНАЧ(Лист1:Лист3!A1:A10)
Внимание: если на листах разное количество данных, пустые ячейки будут проигнорированы.