COUNTIFS
Връща броя на клетките, които отговарят на критериите, в няколко диапазона.
Тази функция е налична от LibreOffice 4.0.
COUNTIFS(Диапазон; Критерий[; Диапазон2; Критерий2][; ... ; [Диапазон127; Критерий127]])
Диапазон1 – задължителен аргумент. Диапазон от клетки, име на наименуван диапазон или заглавие на ред или колона, върху която да се приложи съответният критерий.
Критерий: критерият представлява число, текст или обръщение към единична клетка. Той се използва за сравняване на съдържанието на клетки.
Обръщение към празна клетка се интерпретира като числовата стойност 0.
Съответстващ израз може да бъде:
-
Числова или логическа стойност. Съдържанието на съответстваща клетка е равно на числовата или логическа стойност.
-
Стойност, започваща с операция за сравняване (<, <=, =, >, >=, <>).
За =, ако стойността е празна, тя съответства на празни клетки.
За <>, ако стойността е празна, тя съответства на непразни клетки.
За <>, ако стойността не е празна, тя съответства на произволно съдържание на клетка, различно от тази стойност, включително празни клетки.
Бележка: "=0" не съответства на празни клетки.
За = и <>, ако стойността не е празна и не може да се интерпретира като числов тип или някой от подтиповете му, а свойството Критериите за търсене = и <> се отнасят за цели клетки е активно, сравнението се извършва спрямо цялото съдържание на клетката, а ако не е активно, сравнението е спрямо произволна част от полето, която съответства на критерия.
-
Друга текстова стойност. Ако настройката Критериите за търсене = и <> се отнасят за цели клетки е включена, сравнението се извършва спрямо цялото съдържание на клетката, а ако е изключена – спрямо произволна част от полето, която съответства на критериите. Изразът може да съдържа текст, числа, регулярни изрази или заместващи знаци (ако са разрешени в настройките за изчисляване).
Диапазон2 – незадължителен. „Диапазон2“ и всички следващи имат значение, аналогично на „Диапазон1“.
Критерий2 – незадължителен. „Критерий2“ и всички следващи имат значение, аналогично на „Критерий“.
Търсенето поддържа заместващи знаци или регулярни изрази. Ако са разрешени регулярните изрази, можете да въведете например „всички.*“, за да намерите първото срещане на „всички“, последвано от произволни знаци. Ако искате да търсите текст, който сам представлява регулярен израз, трябва или да поставите наклонена черта „\“ пред всеки метазнак или операция на регулярния израз, или да оградите текста с \Q...\E. Можете да превключвате автоматичното изчисляване на заместващи знаци или регулярни изрази в .
Когато се използват функции, в които един или няколко аргумента са низове с критерии за търсене – регулярни изрази, първо се прави опит низовете с критерии да се преобразуват в числа. Например ".0" ще се преобразува в 0.0 и т.н. При успех няма да се използва сравняване по регулярен израз, а сравняване на числа. Ако обаче се превключи към локал, в който десетичният разделител не е точка, ще сработи преобразуването към регулярен израз. За да наложите изчисляване на регулярен израз вместо числов, използвайте израз, който не може да бъде изтълкуван като число, например ".[0]", ".\0" или "(?i).0".
Диапазон, Диапазон2... и Критерий, Критерий2, ... трябва да имат еднакъв размер, иначе функцията ще върне Гр:502 – невалиден аргумент.
Логическата връзка между критериите може да се дефинира като логическо И (конюнкция). С други думи, стойността на съответната клетка от Функ_диапазон се включва в изчислението тогава и само тогава, когато са изпълнени всички зададени критерии.
Функцията може да има до 255 аргумента, което означава, че можете да зададете 127 диапазона и критерии за тях.
Стойност TRUE в клетка се третира като 1, а FALSE – като 0 (нула).
Тази функция е от стандарта Open Document Format for Office Applications (OpenDocument) версия 1.2. (ISO/IEC 26300:2-2015)
Да разгледаме следната таблица:
|
A
|
B
|
C
|
1
|
Име на продукт
|
Sales
|
Revenue
|
2
|
кошче
|
20
|
65
|
3
|
кош
|
35
|
85
|
4
|
пиромолив
|
20
|
190
|
5
|
молив
|
17
|
180
|
6
|
кошница
|
не
|
не
|
Във всички примери по-долу диапазонът за изчисляване съдържа ред №6, който се игнорира, защото съдържа текст.
Проста употреба
=COUNTIFS(B2:B6;">=20")
Преброява редовете от диапазона B2:B6 със стойности, по-големи или равни на 20. Връща 3, защото петият и шестият ред не отговарят на критерия.
=COUNTIFS(B2:B6;">=20";C2:C6;">70")
Преброява редовете, които съдържат едновременно стойности, по-големи от 70 в диапазона C2:C6 и стойности, по-големи или равни на 20 в диапазона B2:B6. Връща 2, защото вторият, петият и шестият ред не удовлетворяват всички критерии.
Използване на регулярни изрази и вложени функции
За да работят тези примери както е описано, уверете се, че е отметнато Регулярни изрази във формулите в .
=COUNTIFS(B2:B6;"[:alpha:]*")
Преброява редовете от диапазона B2:B6, които съдържат само букви. Връща 1, защото само шестият ред изпълнява критерия.
=COUNTIFS(B2:B6;">"&MIN(B2:B6);B2:B6;"<"&MAX(B2:B6))
Преброява редовете от диапазона B2:B6 с изключение на тези с минималната и максималната стойност в диапазона. Връща 2, защото третият, петият и шестият ред не удовлетворяват всички критерии.
=COUNTIFS(A2:A6;"кош.*";B2:B6;"<"&MAX(B2:B6))
Преброява редовете, съответстващи на всички стойности от диапазона A2:A6, които започват с „леп“ и на всички стойности от диапазона B2:B6 освен максималната. Връща 1, защото само вторият ред удовлетворява всички критерии.
Обръщение към клетка като критерий
Ако е необходимо лесно да промените някой критерий, може да го зададете в отделна клетка и в условието на функцията COUNTIFS да използвате обръщение към тази клетка. Например горната функция може да бъде пренаписана както следва:
=COUNTIFS(A2:A6;E2&".*";B2:B6;"<"&MAX(B2:B6))
Ако E2 = кош, функцията връща 1, защото връзката към клетката се замества със съдържанието ѝ и функцията работи като в предишния пример.
Отваряне на файл с пример: