Функция БДСУММ() , английский вариант DSUM(), суммирует числа в таблице данных, которые удовлетворяют заданным условиям.
Рассмотрим мощную функцию суммирования БДСУММ() , английский вариант DSUM( database, field, criteria ). Эту функцию имеет смысл использовать, когда необходимо просуммировать значения с учетом нескольких условий. Подробный анализ этих задач приводится в группе статей Сложение чисел с несколькими критериями .
Как показано в вышеуказанных статьях, без функции БДСУММ() можно вообще обойтись, заменив ее функциями СУММПРОИЗВ() , СУММЕСЛИМН() или формулами массива . Но, иногда, функция БДСУММ() действительно удобна, особенно при использовании многочисленных или сложных критериев, например, с подстановочными знаками . Сначала разберем синтаксис функции, затем решим задачи.
Для использования этой функции требуется чтобы:
БДСУММ( база_данных;поле;условия ) База_данных представляет собой диапазон ячеек с данными связанными логически, т.е. таблицу. Верхняя строка таблицы должна содержать заголовки всех столбцов. Поле — Заголовок столбца, по которому производится суммирование (т.е. столбец с числами). Аргумент Поле можно заполнить введя:
Условия — интервал ячеек, который содержит задаваемые условия (т.е. таблица критериев). Структура таблицы с критериями отбора для БДСУММ() аналогична структуре для Расширенного фильтра .
Предположим, что в диапазоне A 8:С13 имеется таблица продаж, содержащая поля (столбцы) Товар , Продавец и Продажи (см. рисунок выше и файл примера ).
Просуммируем все продажи, которые >3000.
Алгоритм следующий:
Альтернативное решение - = СУММЕСЛИ(C9:C13;F3) или = СУММЕСЛИ(C9:C13;">3000")
Просуммируем все значения продаж продавца Белов .
Алгоритм следующий:
Альтернативное решение - = СУММЕСЛИ(B9:B13;"белов";C9:C13)
Найдем сумму продаж >3000 только продавца Белов . Т.е. нужно отобрать строки, у которых в столбце Продавец значится Белов , а в столбце Продажи значение >3000, затем просуммировать значения продаж в отобранных строках (см. также статью про Условие И ).
В этом случае, критерии отбора должны размещаться под соответствующими заголовками, названия которых точно совпадает с заголовками столбцов исходной таблицы, по которым будет производиться поиск. Критерии должны располагаться в одной строке.
Формула для сложения: = БДСУММ(B8:C13;C8;F2:G3)
Альтернативное решение - =СУММЕСЛИМН(C9:C13;B9:B13;G3;C9:C13;F3) или =СУММЕСЛИМН(C9:C13;B9:B13;"белов";C9:C13;">3000")
Найдем сумму продаж продавцов Белов ИЛИ Батурин . Т.е. нужно отобрать строки, в которых в столбце Продавец значится Белов ИЛИ Батурин (см. также статью про Условие ИЛИ ).
В этом случае, критерии отбора должны размещаться под заголовком, название которого совпадает с заголовком столбца исходной таблицы, по которому будет производиться поиск (столбец Продавец ). Критерии должны располагаться друг под другом (в разных строках), т.к. отбираются строки, у которых в поле Продавец значение Белов ИЛИ строки, у которых в поле Продавец значение Батурин (функция БДСУММ () как бы совершает 2 прохода по таблице с разными критериями для одного поля).
Записать саму формулу можно так =БДСУММ(B8:C13;C8;B2:B4)
Альтернативное решение - =СУММЕСЛИ(B9:B13;"белов";C9:C13)+СУММЕСЛИ(B9:B13;"батурин";C9:C13)
Найдем сумму продаж Белова ИЛИ Продаж >6000 Т.е. нужно отобрать строки, в которых в столбце Продавец значится Белов ИЛИ в столбце Продажи имеется значение >6000 .
Критерии должны располагаться в разных строках и в разных столбцах, т.к. отбираются строки, у которых в поле Продавец значение Белов ИЛИ строки, у которых в поле Продажи значение >6000 (функция БДСУММ () как бы совершает 2 прохода по таблице с разными критериями для 2-х разных полей).
Записать саму формулу можно так =БДСУММ(B8:C13;C8;G2:H4)
Альтернативное решение - = СУММЕСЛИ(B9:B13;G3;C9:C13)+СУММЕСЛИ(C9:C13;H4)-СУММЕСЛИМН(C9:C13;B9:B13;G3;C9:C13;H4) или = СУММЕСЛИ(B9:B13;"белов";C9:C13)+СУММЕСЛИ(C9:C13;">6000")-СУММЕСЛИМН(C9:C13;B9:B13;"белов";C9:C13;">6000")
Найдем сумму продаж товара Фрукты продавца Белов . Т.е. нужно отобрать строки, в которых в столбце Продавец значится Белов И в столбце Товар значится Фрукты .
В этом случае, критерии отбора должны размещаться под заголовками, названия которых совпадают с заголовками столбцов исходной таблицы, по которым будет производиться поиск (столбцы Продавец и Товар ).
Записать саму формулу можно так =БДСУММ(A8:C13;C8;A2:B3)
Альтернативное решение - =СУММЕСЛИМН(C9:C13;A9:A13;"фрукты";B9:B13;"белов")
Просуммируем продажи, которые выше среднего.
В качестве условия отбора можно использовать значение, вычисляемое при помощи формулы. Формула должна возвращать результат ИСТИНА или ЛОЖЬ.
Для этого введем в ячейку С3 файла примера формулу =C9>СРЗНАЧ($C$9:$C$13) , а в С2 вместо заголовка введем произвольный поясняющий текст, например, « Больше среднего » (заголовок не должен повторять заголовки исходной таблицы).
Обратите внимание на то, что диапазон нахождения среднего значения введен с использованием абсолютных ссылок ( $C$9:$C$13 ), а среднее значение всех продаж таблицы СРЗНАЧ($C$9:$C$13) сравнивается с первым значением диапазона, ссылка на который задана относительной адресацией ( C9 ). При вычислении функции БДСУММ() EXCEL увидит, что С9 — это относительная ссылка, и будет перемещаться по диапазону вниз по одной записи и возвращать значение либо ИСТИНА, либо ЛОЖЬ (больше среднего или нет). Если будет возвращено значение ИСТИНА, то соответствующая строка таблицы будет учтена при суммировании. Если возвращено значение ЛОЖЬ, то строка учтена не будет.
Записать формулу можно так =БДСУММ(C8:C13;C8;C2:C3)
Альтернативное решение - =СУММЕСЛИ(C9:C13;">"&СРЗНАЧ($C$9:$C$13))
Найдем сумму продаж Белова , которые выше среднего, а также продажи Батурина .
Записать формулу можно так =БДСУММ(B8:C13;C8;B2:C4)
Альтернативное решение - =СУММЕСЛИМН(C9:C13;C9:C13;">"&СРЗНАЧ($C$9:$C$13);B9:B13;"Белов")+СУММЕСЛИ(B9:B13;"Батурин";C9:C13)
Сумма продаж Товара ФРУкты (первые три буквы - ЗАГЛАВНЫЕ (т.е. прописные))
Записать формулу можно так =БДСУММ(A8:C13;C8;E2:E3)
Альтернативное решение - =СУММПРОИЗВ(СОВПАД("ФРУкты";A9:A13)*C9:C13)
© Copyright 2013 - 2024 Excel2.ru. All Rights Reserved
Комментарии