Съдържание

# Функция AVERAGEIF

Намира средното аритметично на всички клетки в даден диапазон, които удовлетворяват дадено условие. Функцията AVERAGEIF събира всички резултати, които преминат логическата проверка, и дели сумата на броя избрани стойности.

Тази функция е налична от LibreOffice 4.0.

### Синтаксис

=AVERAGEIF(Диапазон; Критерий [; Диапазон_за_усредняване])

Диапазон – задължителен аргумент. Масив, име на област или заглавие на ред или колона, съдържаща числата за усредняване или числата или текста за условието.

Критерий1: критерият представлява текстов израз, изчисляван върху формула, число, текст или обръщение към единична клетка. Той се използва за сравняване със съдържанието на клетки.

Обръщение към празна клетка се интерпретира като числовата стойност 0.

Съответстващ израз може да бъде:

- Числова или логическа стойност. Съдържанието на съответстваща клетка е равно на числовата или логическа стойност.

- Стойност, започваща с операция за сравняване (<, <=, =, >, >=, <>).

  За =, ако стойността е празна, тя съответства на празни клетки.

  За <>, ако стойността е празна, тя съответства на непразни клетки.

  За <>, ако стойността не е празна, тя съответства на произволно съдържание на клетка, различно от тази стойност, включително празни клетки.

  Бележка: "=0" не съответства на празни клетки.

  За = и <>, ако стойността не е празна и не може да се интерпретира като числов тип или някой от подтиповете му, а свойството Критериите за търсене = и <> се отнасят за цели клетки е активно, сравнението се извършва спрямо цялото съдържание на клетката, а ако не е активно, сравнението е спрямо произволна част от полето, която съответства на критерия.

- Друга текстова стойност. Ако настройката Критериите за търсене = и <> се отнасят за цели клетки е включена, сравнението се извършва спрямо цялото съдържание на клетката, а ако е изключена – спрямо произволна част от полето, която съответства на критериите. Изразът може да съдържа текст, числа, регулярни изрази или заместващи знаци (ако са разрешени в настройките за изчисляване).

Търсенето поддържа заместващи знаци или регулярни изрази. Ако са разрешени регулярните изрази, можете да въведете например „всички.*“, за да намерите първото срещане на „всички“, последвано от произволни знаци. Ако искате да търсите текст, който сам представлява регулярен израз, трябва или да поставите наклонена черта „\“ пред всеки метазнак или операция на регулярния израз, или да оградите текста с \Q...\E. Можете да превключвате автоматичното изчисляване на заместващи знаци или регулярни изрази в LibreOffice - Preferences Инструменти - Настройки - PRODUCTNAME Calc - Изчисляване.

Когато се използват функции, в които един или няколко аргумента са низове с критерии за търсене – регулярни изрази, първо се прави опит низовете с критерии да се преобразуват в числа. Например ".0" ще се преобразува в 0.0 и т.н. При успех няма да се използва сравняване по регулярен израз, а сравняване на числа. Ако обаче се превключи към локал, в който десетичният разделител не е точка, ще сработи преобразуването към регулярен израз. За да наложите изчисляване на регулярен израз вместо числов, използвайте израз, който не може да бъде изтълкуван като число, например ".[0]", ".\0" или "(?i).0".

Диапазон_за_усредняване – незадължителен. Диапазон от стойности за изчисляване на средното.

Ако не е зададен Диапазон_за_усредняване, Диапазон се използва и за двете – изчисляването на средната стойност и търсенето според условие. Ако е зададен Диапазон_за_усредняване, тогава Диапазон се използва само за проверката на условието, а Диапазон_за_усредняване – за самото изчисляване на средната стойност.

Ако някоя клетка в диапазон от стойности за изчисляване на средно е празна или съдържа текст, функцията AVERAGEIF пропуска тази клетка.
Ако целият диапазон е празен, съдържа само текст или никоя стойност от него не удовлетворява условието (или съчетание от изброените), функцията поражда грешка #DIV/0!.

### Примери

Да разгледаме следната таблица:

| A | B | C
1 | Име на продукт | Sales | Revenue
2 | кошче | 20 | 65
3 | кош | 35 | 85
4 | пиромолив | 20 | 190
5 | молив | 17 | 180
6 | кошница | не | не

Във всички примери по-долу диапазонът за изчисляване съдържа ред №6, който се игнорира, защото съдържа текст.

#### Проста употреба

=AVERAGEIF(B2:B6;"<35")

Изчислява средното на стойностите от диапазона B2:B6, които са по-малки от 35. Връща 19, защото вторият ред не участва в изчислението.

=AVERAGEIF(B2:B6;"<"&MAX(B2:B6))

Изчислява средното на стойностите от същия диапазон, които са по-малки от максималната му стойност. Връща 19, защото най-голямата стойност (вторият ред) не участва в изчислението.

=AVERAGEIF(B2:B6;">"&SMALL(B2:B6;1))

Изчислява средното на стойностите от същия диапазон, които са по-големи от най-малката му стойност. Връща 25, защото най-малката стойност (четвъртият ред) не участва в изчислението.

#### Използване на „Диапазон_за_усредняване“

=AVERAGEIF(B2:B6;"<35";C2:C6)

Функцията търси стойности, по-малки от 35, в диапазона B2:B6 и изчислява средното на съответните стойности от диапазона C2:C6. Връща 145, защото вторият ред не участва в изчислението.

=AVERAGEIF(B2:B6;">"&MIN(B2:B6);C2:C6)

Функцията търси кои стойности в диапазона B2:B6 са по-големи от най-малката стойност в B2:B6 и изчислява средното на съответните стойности от диапазона C2:C6. Резултатът е 113,3, защото четвъртият ред (в който е най-малката стойност на диапазона B2:B6) не участва в изчислението.

=AVERAGEIF(B2:B6;"<"&LARGE(B2:B6;2);C2:C6)

Функцията търси кои стойности в диапазона B2:B6 са по-малки от втората най-голяма стойност в B2:B6 и изчислява средното на съответните стойности от диапазона C2:C6. Резултатът е 180, защото само четвъртият ред участва в изчислението.

#### Използване на регулярни изрази

=AVERAGEIF(A2:A6;"кош";B2:B6)

Функцията търси кои стойности в диапазона A2:A6 съдържат само думата „кош“ и изчислява средното на съответните стойности от диапазона B2:B6. Резултатът е 35, защото само вторият ред участва в изчислението. Търсенето се извършва в диапазона A2:A6, но усредняването се извършва върху диапазона B2:B6.

=AVERAGEIF(A2:A6;"кош.*";B2:B6)

Функцията търси кои стойности от диапазона A2:A6 започват с „кош“ и завършват с произволен брой други знаци и изчислява средното на съответните им стойности от диапазона B2:B6. Връща 27,5, защото сега „кошче“ също удовлетворява условието – така и първият, и вторият ред участват в изчислението.

=AVERAGEIF(A2:A6;".*молив.*";B2:B6)

Функцията търси кои стойности от диапазона A2:A6 съдържат „молив“ и започват и завършват с произволен брой други знаци и изчислява средното на съответните им стойности от диапазона B2:B6. Връща 18,5, защото само третият и четвъртият ред участват в изчислението.

#### Обръщение към клетка като критерий

Ако е необходимо лесно да промените някой критерий, може да го зададете в отделна клетка и в условието на функцията AVERAGEIF да използвате обръщение към тази клетка.

=AVERAGEIF(A2:A6;".*"&E2&".*";B2:B6)

Функцията търси кои стойности от диапазона A2:A6 съдържат поредицата знаци, зададена в E2, и започват и завършват с произволен брой други знаци и изчислява средното на съответните им стойности от диапазона B2:B6. Ако E2 = молив, резултатът ще бъде 18,5.

=AVERAGEIF(B2:B6;"<"&E2;C2:C6)

Функцията търси кои стойности от диапазона B2:B6 са по-малки от стойността, зададена в E2, и изчислява средното на съответните им стойности от диапазона C2:C6. Ако E2 = 35, резултатът ще бъде 145.

Тази функция е от стандарта Open Document Format for Office Applications (OpenDocument) версия 1.2. (ISO/IEC 26300:2-2015)

Теми, свързани с показаната

Уикистраница за AVERAGEIF

AVERAGE, AVERAGEA, AVEDEV

COUNTIFS, MINIFS, MAXIFS, AVERAGEIFS, SUMIFS

Списък на регулярните изрази