Среднее арифметическое — одна из самых востребованных статистических метрик в бизнесе, финансах и аналитике. В Microsoft Excel расчёт средней суммы можно выполнить за считанные секунды, но только если знать правильные инструменты. Многие пользователи ошибочно считают, что достаточно просто сложить числа и разделить на их количество. На практике же существует масса нюансов: игнорирование пустых ячеек, обработка текстовых значений, условные средние для фильтрованных данных.
Эта статья раскроет все способы вычисления среднего в Excel — от базовой функции СРЗНАЧ до продвинутых техник с СРЗНАЧЕСЛИ, массивами и Power Query. Вы узнаете, как избежать типичных ошибок (например, когда формула возвращает #ДЕЛ/0!), как посчитать среднее по цвету ячейки или с учётом нескольких условий. А для тех, кто работает с большими данными, мы подготовили бонус: автоматизация расчётов через Power Pivot.
Даже если вы никогда раньше не пользовались Excel для анализа, после прочтения этой статьи сможете уверенно применять средние значения в отчётах, бюджетах и финансовых моделях. Все примеры адаптированы под актуальные версии Excel 2021 и Microsoft 365, но большинство методов работают и в Excel 2016/2019.
1. Базовый метод: функция СРЗНАЧ для простого среднего
Функция СРЗНАЧ (или AVERAGE в английской версии) — это стандартный инструмент для расчёта среднего арифметического. Она автоматически игнорирует пустые ячейки и текстовые значения, что упрощает работу с "грязными" данными.
Синтаксис функции:
=СРЗНАЧ(число1; [число2]; ...)
Где число1, число2 — это аргументы, которые могут быть:
- 📌 Числами (например,
=СРЗНАЧ(10; 20; 30)) - 📌 Ссылками на ячейки (например,
=СРЗНАЧ(A1:A10)) - 📌 Диапазонами (например,
=СРЗНАЧ(A1:A10; C1:C5))
Пример: Допустим, у вас в столбце B указаны продажи за неделю (ячейки B2:B8). Чтобы посчитать среднюю сумму продаж, введите:
=СРЗНАЧ(B2:B8)
⚠️ Внимание: Если в диапазоне есть ячейки с текстом (например, "Н/Д"),СРЗНАЧпроигнорирует их. Но если там окажется логическое значение (ИСТИНА/ЛОЖЬ), оно будет учтено как1или0соответственно.
Для наглядности рассмотрим таблицу с данными о доходах за 5 дней:
| День | Доход, руб. |
|---|---|
| Понедельник | 12 500 |
| Вторник | 15 200 |
| Среда | 14 800 |
| Четверг | — |
| Пятница | 16 000 |
Формула =СРЗНАЧ(B2:B6) вернёт 14 625 руб., так как проигнорирует пустую ячейку в строке "Четверг".
2. СРЗНАЧА: среднее с учётом логических значений и текста
Функция СРЗНАЧА (англ. AVERAGEA) работает аналогично СРЗНАЧ, но учитывает все непустые ячейки, включая:
- 🔢 Числа (как обычно)
- 📝 Текст (приравнивается к
0) - ✅ Логические значения (
ИСТИНА=1,ЛОЖЬ=0)
Когда это полезно? Например, если в вашей таблице есть столбец с пометками "Да"/"Нет" (например, "Оплачено"), и вы хотите посчитать средний чек с учётом всех записей, включая неоплаченные (которые будут учтены как 0).
Пример:
=СРЗНАЧА(A2:A10)
Если в диапазоне A2:A10 есть значения 1000, 2000, "Нет", ИСТИНА, то формула посчитает среднее как:
(1000 + 2000 + 0 + 1) / 4 = 750,25.
⚠️ Внимание: Использование СРЗНАЧА может исказить результаты, если в данных много текстовых пометок. Всегда проверяйте диапазон на наличие нечисловых значений перед применением этой функции.
3. Условное среднее: СРЗНАЧЕСЛИ и СРЗНАЧЕСЛИМН
Часто требуется посчитать среднее не по всем данным, а только по тем, которые соответствуют определённому условию. Для этого в Excel есть две функции:
- 🔍
СРЗНАЧЕСЛИ(англ.AVERAGEIF) — одно условие - 🔍🔍
СРЗНАЧЕСЛИМН(англ.AVERAGEIFS) — несколько условий
Синтаксис СРЗНАЧЕСЛИ:
=СРЗНАЧЕСЛИ(диапазон_условия; условие; [диапазон_среднего])
диапазон_условия— где проверяется условиеусловие— критерий (может быть числом, текстом или выражением)диапазон_среднего— опционально, где берутся значения для среднего (если не указан, используетсядиапазон_условия)
Пример 1: Посчитаем среднюю зарплату только для сотрудников отдела "Маркетинг" (столбец A — отдел, столбец B — зарплата):
=СРЗНАЧЕСЛИ(A2:A10; "Маркетинг"; B2:B10)
Пример 2: Среднее значение продаж, превышающих 10 000 руб.:
=СРЗНАЧЕСЛИ(B2:B10; ">10000")
Синтаксис СРЗНАЧЕСЛИМН (для нескольких условий):
=СРЗНАЧЕСЛИМН(диапазон_среднего; диапазон_условия1; условие1; [диапазон_условия2; условие2]; ...)
Пример: Средняя зарплата для сотрудников отдела "Маркетинг" с стажем более 5 лет (столбец A — отдел, B — зарплата, C — стаж):
=СРЗНАЧЕСЛИМН(B2:B10; A2:A10; "Маркетинг"; C2:C10; ">5")
Как работает условие с подстановочными знаками?
В Excel можно использовать * (любое количество символов) и ? (один символ) в текстовом условии. Например:
=СРЗНАЧЕСЛИ(A2:A10; "Менеджер*" — учтёт все ячейки, начинающиеся на "Менеджер" (Менеджер по продажам, Менеджер проекта и т.д.).
4. Среднее по цвету ячейки: обходной путь
В Excel нет встроенной функции для расчёта среднего по цвету ячейки, но эту задачу можно решить с помощью пользовательской функции на VBA или комбинации фильтра и СРЗНАЧ.
Способ 1: Фильтр + СРЗНАЧ (без VBA):
- Выделите диапазон с данными.
- Нажмите
Данные → Фильтр. - Отфильтруйте по цвету ячейки (кликните на стрелку фильтра →
Фильтр по цвету). - Скопируйте отфильтрованные данные в новый диапазон.
- Примените
СРЗНАЧк скопированным данным.
Способ 2: Пользовательская функция VBA (для продвинутых пользователей):
- Нажмите
Alt + F11, чтобы открыть редактор VBA. - Вставьте новый модуль (
Insert → Module). - Добавьте код:
Function ColorAverage(rng As Range, color As Range) As DoubleDim cell As Range, sum As Double, count As Integer
For Each cell In rng
If cell.Interior.Color = color.Interior.Color Then
sum = sum + cell.Value
count = count + 1
End If
Next cell
If count > 0 Then ColorAverage = sum / count
End Function
- Теперь в Excel можно использовать
=ColorAverage(A1:A10; B1), гдеB1— ячейка с нужным цветом.
⚠️ Внимание: Пользовательские функции VBA работают только в файлах с расширением .xlsm (с поддержкой макросов). При открытии такого файла Excel может показать предупреждение о безопасности.
Отключить фильтры в данных|Сохранить резервную копию файла|Проверить, что цвета ячеек применены через "Условное форматирование" или вручную|Включить поддержку макросов (если используете VBA)-->
5. Среднее без учёта экстремальных значений (усечённое среднее)
В статистике часто используется усечённое среднее, которое игнорирует самые высокие и самые низкие значения (например, 10% крайних значений). В Excel это можно реализовать комбинацией функций СРЗНАЧ, НАИМЕНЬШИЙ, НАИБОЛЬШИЙ и ЧАСТОТА.
Пример: Посчитаем усечённое среднее для диапазона A1:A10, исключив по 1 крайнему значению с каждого конца:
=СРЗНАЧ(A1:A10) - (НАИБОЛЬШИЙ(A1:A10;1) + НАИМЕНЬШИЙ(A1:A10;1)) / (СЧЁТ(A1:A10) - 2)
Для более гибкого решения (например, исключить 20% крайних значений) потребуется формула массива:
=СРЗНАЧ(ЕСЛИ((A1:A10>=ПЕРСЕНТИЛЬ(A1:A10;0,2))*(A1:A10<=ПЕРСЕНТИЛЬ(A1:A10;0,8));A1:A10))
Вводится как формула массива: после ввода нажмите Ctrl+Shift+Enter.
Когда это нужно?
- 📊 В финансовом анализе для исключения выбросов (например, разовых крупных сделок).
- 🏆 В спортивной статистике, где учитывают результаты без рекордных и антирекордных показателей.
- 📈 В маркетинге для анализа "типичного" поведения клиентов без учёта аномалий.
6. Среднее во сводных таблицах и Power Query
Если вам нужно посчитать средние значения по группам данных (например, среднюю продажу по регионам или средний чек по категориям товаров), удобнее всего использовать сводные таблицы или Power Query.
Способ 1: Сводная таблица
- Выделите исходные данные (включая заголовки).
- Нажмите
Вставка → Сводная таблица. - В области "Строки" перетащите поле, по которому нужно группировать (например, "Регион").
- В область "Значения" перетащите числовое поле (например, "Продажи").
- Кликните по полю в области "Значения" →
Параметры полей значений → Среднее.
Способ 2: Power Query (для автоматизации)
- Выделите данные →
Данные → Из таблицы/диапазона(в Excel 2016+). - В редакторе Power Query выделите столбец с числовыми данными.
- Нажмите
Преобразование → Статистика → Среднее. - Группируйте данные по нужному критерию (например,
Группировка по → Регион). - Нажмите
Закрыть и загрузить, чтобы вернуть данные в Excel.
Преимущества Power Query:
- 🔄 Автоматическое обновление при изменении исходных данных.
- 🧹 Очистка данных "на лету" (удаление пустых строк, замена ошибок).
- 📊 Возможность объединения данных из нескольких источников.
| Метод | Плюсы | Минусы |
|---|---|---|
| Сводная таблица | Быстро, интуитивно | Не обновляется автоматически при изменении данных (нужно вручную) |
| Power Query | Автоматизация, очистка данных | Требует изучения, сложнее для новичков |
| Формулы (СРЗНАЧЕСЛИМН) | Гибкость, динамичность | Сложные формулы для больших данных |
7. Типичные ошибки и как их избежать
Даже опытные пользователи Excel иногда сталкиваются с ошибками при расчёте среднего. Вот самые распространённые проблемы и их решения:
Ошибка 1: #ДЕЛ/0! (деление на ноль)
- 🔹 Причина: В диапазоне нет числовых значений, или все ячейки пустые/текстовые.
- 🔹 Решение: Используйте
ЕСЛИОШИБКА:=ЕСЛИОШИБКА(СРЗНАЧ(A1:A10); 0)Или проверьте диапазон на наличие данных:
=ЕСЛИ(СЧЁТ(A1:A10)=0; 0; СРЗНАЧ(A1:A10))
Ошибка 2: Неправильное среднее из-за скрытых символов
- 🔹 Причина: В ячейках есть пробелы, неразрывные пробелы (
CHAR(160)) или непечатаемые символы. - 🔹 Решение: Очистите данные с помощью
СЖПРОБЕЛЫилиПЕЧСИМВ:=СРЗНАЧ(--СЖПРОБЕЛЫ(A1:A10))Двойной унарный минус (
--) преобразует текст в числа.
Ошибка 3: Среднее считается по не тем данным
- 🔹 Причина: В диапазоне есть скрытые строки или столбцы, которые не видны, но учитываются в расчётах.
- 🔹 Решение: Используйте
ПРОСМОТРилиДВССЫЛдля динамических диапазонов:=СРЗНАЧ(ДВССЫЛ("A1:A" & СЧЁТЗ(A:A)))Эта формула автоматически определяет последний заполненный ряд в столбце
A.
⚠️ Внимание: Если вы копируете формулу сСРЗНАЧв другие ячейки, убедитесь, что ссылки на диапазоны зафиксированы знаком$(например,$A$1:$A$10). Иначе диапазон будет сдвигаться при копировании.
Критическая ошибка: Использование СРЗНАЧ для данных с выбросами может исказить результаты на 20-30%. Например, если в наборе {10, 12, 14, 15, 100} обычное среднее равно 30,2, а медиана — 14. В таких случаях лучше использовать МЕДИАНА или усечённое среднее.
FAQ: Ответы на частые вопросы
Можно ли посчитать среднее по нескольким листам?
Да! Используйте 3D-ссылки. Например, чтобы посчитать среднее по ячейке A1 на листах Лист1, Лист2 и Лист3:
=СРЗНАЧ(Лист1:Лист3!A1)
Если нужно усреднить диапазоны, укажите их явно:
=СРЗНАЧ(Лист1!A1:A10; Лист2!A1:A10; Лист3!A1:A10)
Как посчитать среднее только по видимым ячейкам (после фильтра)?
Используйте функцию ПРОМЕЖУТОЧНЫЕ.ИТОГИ:
=ПРОМЕЖУТОЧНЫЕ.ИТОГИ(1; A1:A10)
Где 1 — это код операции для среднего. Важно: перед использованием примените фильтр к данным.
Почему моя формула СРЗНАЧ возвращает неверное значение?
Вероятные причины:
- 🔸 В диапазоне есть текстовые значения, которые Excel интерпретирует как
0(если используетеСРЗНАЧА). - 🔸 Ячейки отформатированы как текст (проверьте формат через
Главная → Формат → Формат ячеек). - 🔸 В данных есть скрытые символы (используйте
СЖПРОБЕЛЫилиЧИСТ).
Чтобы диагностировать проблему, проверьте каждую ячейку в диапазоне с помощью =ТИП(A1) (должен возвращать 1 для чисел).
Как посчитать средневзвешенное значение?
Для средневзвешенного используйте функцию СУММПРОИЗВ:
=СУММПРОИЗВ(A1:A10; B1:B10) / СУММ(B1:B10)
Где A1:A10 — значения, а B1:B10 — их веса.
Пример: Если у вас есть оценки 5, 4, 3 с весами 2, 3, 1, формула вернёт (5*2 + 4*3 + 3*1) / (2+3+1) = 4,17.
Можно ли автоматически обновлять среднее при добавлении новых данных?
Да, для этого используйте:
- 📌 Таблицы Excel: Преобразуйте диапазон в таблицу (
Ctrl+T), тогда формулы будут автоматически расширяться. - 📌 Динамические массивы (в Excel 365):
=СРЗНАЧ(ФИЛЬТР(A1:A10; A1:A10<>""))Эта формула игнорирует пустые ячейки и обновляется при добавлении данных.