Читать книгу Много цифр. Анализ больших данных при помощи Excel - Джон Форман - Страница 24
1. Все, что вы жаждали знать об электронных таблицах, но боялись спросить
Использование формул массива
ОглавлениеВ методичке по торговле с лотка есть графа под названием «Комиссия». Оказывается, тренер О'Шонесси позволяет вам торговать с лотка, только если вы отправляете ему некую часть своей прибыли (возможно, чтобы облегчить его затраты на носки без пяток, которые он привык покупать). Графа «Комиссия» отображает, сколько процентов прибыли он забирает с каждой продажи.
Как же узнать, сколько вы ему должны после вчерашнего матча? Чтобы ответить на этот вопрос, умножьте общую прибыль по каждой позиции из сводной таблицы на процент комиссии и затем сложите результаты.
Есть замечательная функция как раз для этой операции, которая умножит и сложит все, что надо, одним махом. Называется она довольно интересно – SUMPRODUCT/СУММПРОИЗВ
. В ячейку Е 1 листа с прибылью по каждой позиции добавьте заголовок «Общая комиссия Тренера». В С2 поместите SUMPRODUCT/СУММПРОИЗВ
для расчета прибыли и процентов от нее:
=SUMPRODUCT(B2:B15,'Fee Shedule'!B2:O2) /
=СУММПРОИЗВ(В2:В15,'Комиссия'!В2:О2)
Ого, да здесь ошибка! В ячейке видно только #Value/#Значение
. Что же случилось?
Несмотря на то, что вы выбрали две области данных одинакового размера и применили к ним функцию SUMPRODUCT/СУММПРОИЗВ
, формула не видит их равенства, потому что одна область вертикальная, а другая – горизонтальная.
К счастью, в Excel есть функция для расположения массивов в нужном направлении. Она называется TRANSPOSE/ТРАНСП
. Нужно написать такую формулу:
=SUMPRODUCT(B2:B15,TRANSPOSE('FeeSchedule'!B2:O2)) /
=СУММПРОИЗВ(B2:B15,ТРАНСП('Комиссия'!B2:O2))
Но нет! Все еще возникает ошибка.
Причина, по которой это происходит, такова: каждая функция Excel по умолчанию возвращает результат в виде единственного значения. Даже если TRANSPOSE/ТРАНСП
вернет первое значение в транспонированный массив. Если вы хотите видеть в результате целый массив, нужно включить TRANSPOSE/ТРАНСП
в «формулу массива». Формулы массива действительно возвращают результат в виде массива, а не единственного значения.
Вам не нужно писать SUMPRODUCT/СУММПРОИЗВ
как-то иначе, чтобы все получилось. Все, что следует сделать – это вместо клавиши «Enter» после ввода формулы нажать «Ctrl+Shift+Enter». В MacOS нужное сочетание – «Command+Return».
Победа! Как видно на рис. 1-20, результатом вычислений является 57,60 долларов. Но я бы округлил его до 50 – неужели Тренеру нужно столько носков?