СУММЕСЛИМН

Возвращает сумму значений ячеек в диапазоне, который удовлетворяет нескольким условиям в нескольких диапазонах.

tip

Эта функция доступна начиная с LibreOffice 4.0.


Синтаксис

СУММЕСЛИМН(Func_Range; Range1; Criterion[; Range2; Criterion2][; … ; [Range127; Criterion127]])

Диапазон функции – обязательный аргумент. Диапазон ячеек, имя именованного диапазона, либо заголовок столбца или строки, содержащих значения для вычисления суммы.

Диапазон 1 — необходимый аргумент. Представляет собой диапазон ячеек, имя именованного диапазона, либо название столбца или строки, к которому применяется соответствующий критерий.

Criterion: A criterion is a single cell Reference, Number or Text. It is used in comparisons with cell contents.

Ссылка на пустую ячейку интерпретируется как числовое значение 0.

Совпадающим выражением может быть:

Диапазон 2 — Необязательный параметр. Диапазон 2 и все последующие поля имеет то же значение, что и Диапазон 1.

Критерий 2 — Необязательный параметр. Критерий 2 и все последующие поля имеет то же значение, что и Критерий.

The search supports wildcards or regular expressions. With regular expressions enabled, you can enter "all.*", for example to find the first location of "all" followed by any characters. If you want to search for a text that is also a regular expression, you must either precede every regular expression metacharacter or operator with a "\" character, or enclose the text into \Q...\E. You can switch the automatic evaluation of wildcards or regular expression on and off in - LibreOffice Calc - Calculate.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Диапазон функции и Диапазон 1, Диапазон 2... должны иметь одинаковый размер, в противном случае функция возвращает ошибку:502 - Недопустимый аргумент.

note

Логическое отношение между критериями может определяться в виде логической функции И (объединение). Другими словами, если и только если все заданные критерии соблюдаются, значение из соответствующей ячейки заданного Диапазона функции будет включено в вычисление.


Функция может иметь до 255 аргументов, что позволяет указать до 127 диапазонов критериев и критериев для них.

Если ячейка содержит значение ИСТИНА, то она обрабатывается как 1, если же ячейка содержит значение ЛОЖЬ, то обрабатывается как 0 (нуль).

note

Эта функция является частью формата Open Document для офисных приложений (OpenDocument) v1.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

пенал

нет

нет


warning

Во всех примерах внизу диапазоны вычисления содержат строку №6, которая игнорируется, поскольку содержит текст.


Простое использование

=СУММЕСЛИМН(B2:B6; B2:B6; ">=20")

Вычисляет сумму значений диапазона B2:B6, которые больше или равны 20. Возвращает 75, потому что пятая строка не удовлетворяет условию.

=СУММЕСЛИ(C2:C6; B2:B6; ">=20"; C2:C6; ">70")

Вычисляет сумму значений диапазона C2:C6, которые больше 70 и соответствуют ячейкам диапазона B2:B6 со значениями больше или равными 20. Возвращает 275, потому что вторая и пятая строки не удовлетворяют по крайней мере одному условию.

Использование регулярных выражений и вложенных функций

=СУММЕСЛИМН(C2:C6; B2:B6; ">"&МИН(B2:B6); B2:B6; "<"&МАКС(B2:B6))

Вычисляет сумму значений диапазона C2:C6, которые соответствуют всем значениям диапазона B2:B6, за исключением их минимальных и максимальных значений. Возвращает 255, потому что третья и пятая строки не удовлетворяют по крайней мере одному условию.

=СУММЕСЛИМН(C2:C6;A2:A6;"pen.*";B2:B6;"<"&MAX(B2:B6))

Вычисляет сумму значений диапазона C2:C6, которые соответствуют всем ячейкам диапазона A2:A6, начиная с «pen», и всем ячейкам диапазона B2:B6, за исключением из максимума. Возвращает 65, потому что только вторая строка соответствует всем условиям.

Ссылка на ячейку с условием

Для более удобного изменения условия функции можно указать его в отдельной ячейке и использовать ссылку на него в качестве условия функции СУММЕСЛИМН. Например, функцию выше можно переписать следующим образом:

=СУММЕСЛИМН(C2:C6; A2:A6; E2&".*"; B2:B6; "<"&МАКС(B2:B6))

Если E2 = pen, то функция возвращает 65, потому что ссылка на ячейку заменяется на её содержимое.

Open file with example:

Пожалуйста, поддержите нас!