Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Как построить финансовую модель 2016.doc
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
1.7 Mб
Скачать

Расходы на персонал: sumifs и countifs

SUMIFS может искать с учетом многих критериев сразу (до 127!) и находит поля, отвечающие сразу всем критериям. Формула SUMIFS впервые возникает только в Excel 2007, предыдущие версии ее не имеют. Для подсчета не суммы значений, а числа записей можно использовать парную к SUMIFS формулу COUNTIFS. Она также присутствует только в Excel 2007 и 2010. Правила оформления вызовов имен и операторов там те же, что и для формулы SUMIF.

Запрос 3. Каковы ежемесячные выплаты зарплаты только инженерам?

Алгоритм

  • Найти для данного периода общую сумму зарплат всех тех сотрудников, кто в данном периоде работает в компании и для которых значение Type равно "инженер".

Критерии

  • Основной массив – Salary (C7)

  • Критерий 1 – Start_period (D7)

  • Критерий 2 – Type (E7)

  • Значение критерия 2 – Инженер

Формула:

=SUMIFS(INDIRECT($C7),INDIRECT($D7),"<="&G$2,INDIRECT($E7),$F7)

=SUMIFS(

Условная сумма по нескольким критериям.

INDIRECT($C7),

Сложить отвечающие критерию значения из массива, имя которого вписано в клетку С7 (Salary).

Колонка закреплена жестко (знак $) для последующего копирования.

INDIRECT($D7),

Найти массив критериев выбора, в котором записаны периоды начала работы сотрудников. Формула найдет его по имени, которое вписано в ячейку D7 (Start_period).

Колонка закреплена жестко (знак $) для последующего копирования.

"<="&G$2,

Если сотрудник уже работает в компании, поле start_period его записи меньше или равно значению текущего периода (ячейка G2).

Ряд закреплен жестко (знак $) для последующего копирования.

INDIRECT($E7),

Найти массив критериев выбора, в котором записаны типы сотрудников. Формула найдет его по имени, которое вписано в ячейку E7 (Type).

Колонка закреплена жестко (знак $) для последующего копирования.

$F7

Из массива Type будут выбраны только записи, у которых в поле Type стоит значение "Инженер" (ячейка F7).

Колонка закреплена жестко (знак $) для последующего копирования.

)

Формула завершена

Запрос 4. Сколько инженеров работают в компании в каждом из периодов?

Алгоритм

  • Найти для данного периода общее число всех тех сотрудников, для которых значение Type равно "инженер".

Критерии

  • Основной массив – не нужен

  • Критерий 1 – Start_period (D8)

  • Критерий 2 – Type (E8)

  • Значение критерия 2 – Инженер

Формула:

=COUNTIFS(INDIRECT($D8),"<="&G$2,INDIRECT($E8),$F8)

=COUNTIFS(

Условный счет по нескольким критериям.

INDIRECT($D8),

Найти массив критериев выбора, в котором записаны периоды начала работы сотрудников. Формула найдет его по имени, которое вписано в ячейку D8 (Start_period).

Колонка закреплена жестко (знак $) для последующего копирования.

"<="&G$2,

Если сотрудник уже работает в компании, поле start_period его записи меньше или равно значению текущего периода (ячейка G2).

Ряд закреплен жестко (знак $) для последующего копирования.

INDIRECT($E8),

Найти массив критериев выбора, в котором записаны типы сотрудников. Формула найдет его по имени, которое вписано в ячейку E8 (Type).

Колонка закреплена жестко (знак $) для последующего копирования.

$F8

Из массива Type будут выбраны только записи, у которых в поле Type стоит значение "Инженер" (ячейка F7).

Колонка закреплена жестко (знак $) для последующего копирования.

)

Формула завершена

Запрос 4 (первый способ). Сколько инженеров поступило на работу в компанию в каждом из периодов?

Алгоритм

  • Найти для данного периода общее число всех тех сотрудников, кто в данном периоде поступил на работу в компанию и для которых значение Type равно "инженер".

Критерии

  • Основной массив – не нужен

  • Критерий 1 – Start_period (D9)

  • Критерий 2 – Type (E9)

  • Значение критерия 2 – Инженер

Формула:

=COUNTIFS(INDIRECT($D9),G$2,INDIRECT($E9),$F9)

В результате этих упражнений должна получиться матрица с такими значениями:

SUMIFS и COUNTIFS не дают возможности использовать сложно-структурированные критерии. Во-первых, их единственной внутренней логической операцией является AND, и запросы критериев, включающие OR и NOT, они не могут обработать. Во-вторых, они могут манипулировать в качестве критериев только единичными численными значениями, и попытка обработать внутри них на соответствие критериям массив даст неустранимую ошибку. Следующие запросы находится за пределами их возможностей:

  • Сколько сотрудников, кроме инженеров и руководителей, работает во всех подразделениях компании?

  • Сколько руководителей, не являющихся сотрудниками отдела разработки, работает в компании?

  • Какова в данном периоде сумма выплат по бонусам, не связанным с первичным приемом на работу?

Дополнительный довод в пользу отказа от SUMIFS и COUNTIFS в настоящее время еще в том, что использование Excel 2007 и 2010 создает проблемы с обратной совместимостью. Распространенность Office 2003 достаточно велика для того, чтобы существовал риск того, что модель, созданная в версии 2007 или 2010, не заработает у кого-то из партнеров аналитика.

Существуют еще два способа решить эти и все предшествующие задачи, которые работают во всех версиях Excel и не имеют подобных ограничений.

  • Использованием функции суммирования SUM как функции массива

  • Использованием функции суммы произведений SUMPRODUCT

Мы рассмотрим второй способ, который требует меньше программных ресурсов и одновременно проще в написании.