Перейти к основному содержанию

Как усреднить ячейки на основе нескольких критериев в Excel?

Автор: Сяоян Последнее изменение: 2020 июля 05 г.

В Excel большинство из нас могут быть знакомы с функциями СЧЁТЕСЛИ и СУММЕСЛИ, они могут помочь нам подсчитать или суммировать значения на основе критериев. Но пробовали ли вы когда-нибудь вычислить среднее значение на основе одного или нескольких критериев в Excel?

Ячейки среднего значения на основе одного критерия с функцией Averageif

Ячейки среднего значения на основе нескольких критериев с функцией Averageifs


стрелка синий правый пузырь Ячейки среднего значения на основе одного критерия с функцией Averageif

Предположим, у меня есть следующий диапазон данных, столбец A - это список продуктов, а столбец B - заказы, теперь я буду усреднять ячейки заказа, где продукт - KTE.

doc-avergae-с-критериями-1

Пожалуйста, введите эту формулу в желаемую ячейку: =AVERAGEIF(A2:A19,D2,B2:B19)(A2: A19 это данные, которые содержат критерии, B2: B19 относится к диапазону, который вы хотите усреднить, и D2 является критерием, по которому вы хотите усреднить значения) и нажмите Enter ключ для получения результата, см. снимок экрана:

doc-avergae-с-критериями-2


стрелка синий правый пузырь Ячейки среднего значения на основе нескольких критериев с функцией Averageifs

Если вы хотите рассчитать среднее значение по нескольким критериям, AVERAGEIFS функция может вам помочь.

Синтаксис Averageifs выглядит следующим образом:

СРЕДНЕЛИ (средний_диапазон, критерий_диапазон1, критерий1, критерий_диапазон2, критерий2…)

  • Средний_ диапазон: диапазон ячеек для усреднения;
  • Критерий_диапазон1, диапазон_критериев2,… - это диапазоны, в которых оцениваются соответствующие критерии;
  • Критерии1, критерии2,… Критерии, на которых вы основываетесь.

Возьмем для примера приведенные выше данные. Теперь я хочу усреднить порядок KTE и порядок больше 500. Сделайте следующее:

Введите эту формулу в пустую ячейку: =AVERAGEIFS(B2:B19,A2:A19,E1,B2:B19,">500")( A2: A19 это данные, которые содержат критерии1, B2: B19 относится к диапазону, который вы хотите усреднить, E1 и > 500 являются критериями1 и критериями 2), затем нажмите Enter ключ, чтобы получить желаемый результат. Смотрите скриншот:

doc-avergae-с-критериями-3

Примечание: Если у вас есть более двух критериев, которые вы хотите, вам просто нужно добавить диапазоны критериев и критерии, которые вам нужны, как это: = СРЕДНЕЛИН (C2: C19; A2: A19; F1; B2: B19; F2; C2: C19; "<500")(A2: A19 и F1 - это первый диапазон критериев и критерии, B2: B19 и F2 - второй диапазон критериев и критерии, C2: C19 и <500 являются в третьих диапазон критериев и критерии, C2: C19 относится к диапазону являетесь хотите усреднить значения), см. снимок экрана:

doc-avergae-с-критериями-4


Статьи по теме:

Как усреднить верхние или нижние 3 значения в Excel?

Как усреднить последние 5 значений столбца при вводе новых чисел?

Как усреднить каждые 5 строк или столбцов в Excel?

Лучшие инструменты для офисной работы

🤖 Kutools AI Помощник: Революционный анализ данных на основе: Интеллектуальное исполнение   |  Генерировать код  |  Создание пользовательских формул  |  Анализ данных и создание диаграмм  |  Вызов функций Kutools...
Популярные опции: Найдите, выделите или определите дубликаты   |  Удалить пустые строки   |  Объедините столбцы или ячейки без потери данных   |   Раунд без формулы ...
Супер поиск: Множественный критерий VLookup    VLookup с несколькими значениями  |   VLookup по нескольким листам   |   Нечеткий поиск ....
Расширенный раскрывающийся список: Быстрое создание раскрывающегося списка   |  Зависимый раскрывающийся список   |  Выпадающий список с множественным выбором ....
Менеджер столбцов: Добавить определенное количество столбцов  |  Переместить столбцы  |  Переключить статус видимости скрытых столбцов  |  Сравнить диапазоны и столбцы ...
Рекомендуемые функции: Сетка Фокус   |  Просмотр дизайна   |   Большой Формулный Бар    Менеджер книг и листов   |  Библиотека ресурсов (Авто текст)   |  Выбор даты   |  Комбинировать листы   |  Шифровать/дешифровать ячейки    Отправлять электронные письма по списку   |  Суперфильтр   |   Специальный фильтр (фильтровать жирным шрифтом/курсивом/зачеркиванием...) ...
15 лучших наборов инструментов12 Текст Инструменты (Добавить текст, Удалить символы, ...)   |   50+ График Тип (Диаграмма Ганта, ...)   |   40+ Практических Формулы (Рассчитать возраст по дню рождения, ...)   |   19 Вносимые Инструменты (Вставить QR-код, Вставить изображение из пути, ...)   |   12 Конверсия Инструменты (Числа в слова, Конверсия валюты, ...)   |   7 Слияние и разделение Инструменты (Расширенные ряды комбинирования, Разделить клетки, ...)   |   ... и более

Улучшите свои навыки работы с Excel с помощью Kutools for Excel и почувствуйте эффективность, как никогда раньше. Kutools for Excel предлагает более 300 расширенных функций для повышения производительности и экономии времени.  Нажмите здесь, чтобы получить функцию, которая вам нужна больше всего...

Описание


Вкладка Office: интерфейс с вкладками в Office и упрощение работы

  • Включение редактирования и чтения с вкладками в Word, Excel, PowerPoint, Издатель, доступ, Visio и проект.
  • Открывайте и создавайте несколько документов на новых вкладках одного окна, а не в новых окнах.
  • Повышает вашу продуктивность на 50% и сокращает количество щелчков мышью на сотни каждый день!
Comments (16)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Hi, I'm trying to create an average only if the row meets criteria in other columns. I need to only include the number in column J if that row has a "B" in column F and a "M" in column E. I've worked out the formula if it's only one condition:

=AVERAGEIF(F2:F114, "B", J2:J114)

But I can't work out how to get it to only average numbers in column J that meet both conditions?
This comment was minimized by the moderator on the site
Hello, Sally
To calculate the average based on multiple criteria, you can apply the AVERAGEIFS function, please use the below formula:
=AVERAGEIFS(J2:J114, F2:F114, "B", E2:E114, "M" )

Please have a try, hope it can help you!
This comment was minimized by the moderator on the site
Thanks so much, this worked perfectly!
This comment was minimized by the moderator on the site
What formula would I use if I wanted to get my averages for a month but not count the days that are zero (0)? I am keeping track of my monthly electric usage but need to get an average even before the end of the months. Any ideas or help?
This comment was minimized by the moderator on the site
Hello, TFkidd
To solve your problem, please apply the below formula:
=AVERAGE(IF(B2:B31<>0,B2:B31))
Please try, hope it can help you!
This comment was minimized by the moderator on the site
Hi there
I am trying to calculate percentage of people from across 4 regions (entered in column b)
and percentage by ethnicity (entered in column D)
I can calculate the average age and percentage of ages, but I can't seem to find a formula to calculate the regions and ethnicity. Any suggestions would be appreciated, thanks Tracy
This comment was minimized by the moderator on the site
To get an average of data in a column with multiple criteria the following formulae may be used.

Syntax = AVERAGEIFS (Range, Range 1, criteria 1, range 2, criteria 2)

In this case, my requirement is to find the average of the data in a range of numbers, without considering '0 - Zero' & values greater that '3000'.

Total data in the range is 31 nos ,

And the formulae will be

=AVERAGEIFS(G5:G35,G5:G35, "> 3000", G5:G35,"<>0")
This comment was minimized by the moderator on the site
I have 4 variables: 1st: Date of onset, 2nd: Date of termination, 3rd: Date of measurement, 4th: measurement. I want to calculate the average of the 4th variable between each period of onset-termination. How can i do it? I think its a bit tricky. Each date of onset has an counterpart date of termination. The same applies for the 3rd and 4th variable.
How can i make this happen?
This comment was minimized by the moderator on the site
VBA code to average one or more ranges of nonzero numbers:


Option Explicit
Function avgNonZeros(ParamArray rangeList() As Variant) As Variant
'Returns the average for all nonzeros of rangeList.
'rangeList may be one or multiple ranges.
Dim cell As Range
Dim i As Long
Dim totSum As Long
Dim cnt As Long
DoEvents 'allows calculations prior to performing
avgNonZeros = 0 'default return
For i = LBound(rangeList) To UBound(rangeList)
For Each cell In rangeList(i)
If cell <> 0 Then
totSum = totSum + cell
cnt = cnt + 1
End If
Next cell
Next i
If cnt <> 0 Then avgNonZeros = totSum / cnt
End Function
This comment was minimized by the moderator on the site
Hi,
I have 200 observations. I need to get an average of 21st to 40th observations. I am struggling to set an averageif formula. Any suggestion will be appreciated.
This comment was minimized by the moderator on the site
I have a similar problem like example #3, but the difference is that I need the average between two dates instead of for a single month. Any suggestion?
This comment was minimized by the moderator on the site
Hello, Crist,

To solve your problem, please apply the below formula:
=AVERAGEIFS(C2:C15, A2:A15, F1, B2:B15, ">=" &F2, B2:B15, "<=" &G2, C2:C15, ">300")

Please try, hope it can help you!
This comment was minimized by the moderator on the site
Hi there,


My is Pablo and I would like to ask you about this situation. I have got a column with several values and some of them are zeros. As they are dB measurements this is the array formula I use to get the average: =10*LOG(AVERAGE(10^(C3:C66/10)))

My problem is that I am trying to get with a formula that does not take in account the zeros.

I have tried the next formula but it seems that does not work for my situation: =10*LOG(AVERAGEif(C3:C66,"<>0",[10^(C3:C66/10)]))

It would be very apprecited if you could give me a hint to solve this problem.

Thank you in advance,

Pablo.
This comment was minimized by the moderator on the site
I want to take numbers in multiple columns and combine them into one average. I have three columns to average, I want two of the columns to count for 40% each and the remaining column to count for 20%. Is this possible? Thanks!
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations