Поиск решений в Excel
для экономиста

Самое понятное объяснение, как это работает + коллекция новых задач
25.07.2017, Елена Позднякова
Приходилось ли Вам когда-нибудь составлять план продаж, маркетинговый бюджет или схему доставки грузов? Если да, то наверняка какое-то решение зависело только от вашего профессионального суждения... Вы когда-нибудь сомневались в том, что Ваше решение наилучшее? Сожалели ли Вы о том, что не имеете возможности просчитать все варианты, ведь факторов так много, а время ограничено?
Умение легко и быстро найти правильный ответ, а еще и своевременно сформулировать вопрос, отличает профессионала высокого класса от начинающего специалиста.
Программа Excel умеет находить наилучшее решение там, где, казалось бы, лучше уже нельзя.
Чтобы это сработало, нужно уметь правильно сформулировать условия, это мы и будем учиться делать в настоящей статье.
Поиск решения - это надстройка программы Excel, по умолчанию она не установлена, поэтому, если Вы никогда ранее ее не использовали, ее нужно настроить.

На одном листе Excel будут расположены все исходные данные, формулы, взаимосвязи и ограничения: это называется математическая модель. В составе модели пять типов данных:
1
Константы - это исходная информация, которая имеется в модели: маржинальная прибыль по каждому продукту, стоимости перевозки от каждого поставщика к каждому покупателю, нормы расхода материалов и т.д. Эти данные могут быть как внесены и виде констант, так и рассчитываться с помощью формул.
2
Изменяемые ячейки - это переменные, которые мы в итоге ищем: количество продукта, которое нужно производить, чтобы прибыль была максимальной или объемы перевозок от каждого поставщика к конкретному покупателю, чтобы затраты были минимальными и т.д.
Изменяемая ячейка может быть одна или диапазон из нескольких ячеек.
Эти ячейки мы будем указывать, но оставлять пустыми, надстройка "Поиск решения" сама заполнит их наилучшими данными.
3
Целевая функция- для того, чтобы программа понимала, какие данные считать наилучшими, мы зададим целевую функцию. Это всегда только одна ячейка, в которую внесена формула. Формула связана с теми данными, которые мы ищем. Например, если мы ищем ассортимент, максимизирующий прибыль, формула целевой функции будет задана как сумма произведений количества каждого продукта (изменяемые данные) и маржинальной прибыли по каждому продукту (константы, внесенные в модель).
При запуске надстройки мы будем указывать, какие данные будут наилучшими для целевой ячейки: максимальное значение, минимальное значение или конкретное число.
Подбор данных в изменяемых ячейках будет осуществляться таким образом, чтобы в ячейке с целевой функцией появилось наилучшее значение.
4
Ограничения - являются главным элементом в Поиске решения. Все ресурсы, которые участвуют в модели и имеют максимально допустимые значения - это ограничения: объем инвестирования, объем покупательского спроса, срок реализации проекта.
Например, на складе всего 5 000 кг материала, который входит в состав всех продуктов, а мы ищем ассортимент, который даст максимальную прибыль. Чтобы правильно учесть ограничение, потребуется внести формулу, которая рассчитает объем материала, который потребуется для производства ассортимента Х - наших переменных. Далее уже непосредственно в самой надстройке будет задано ограничение:
Важно учитывать, что если переменные должны быть выражены неотрицательным или целым числом - это тоже ограничения, которые необходимо задать.
5
Дополнительные формулы - в модель может быть внесено любое количество дополнительных формул, которые не влияют на целевую функцию и ограничения, а несут справочную информацию по проекту.
Как это работает: пошаговая инструкция
на примере задачи по распределению заказов
Попробуйте простыми расчетами решить такую задачу:

Компания занимается производством шкатулок ручной работы. В штате есть 4 мастера-надомника. Производительность мастеров в день представлена в таблице:

Мастер 1 - 3 шкатулки в день
Мастер 2 - 1,5 шкатулки в день
Мастер 3 - 2 шкатулки в день
Мастер 4 - 2,5 шкатулки в день
Поступил срочный заказ на 100 шкатулок и нужно раздать 100 заготовок, чтобы мастера успели справиться в самый короткий срок.
Сколько и кому раздать заготовок?
Показать ответ
Эту задачу можно решить простыми расчетами, без использования поиска решений. Для начала так и поступим:

Рассчитаем, сколько шкатулок в день могут произвести все мастера:

3+1,5+2+2,5 = 9 шкатулок.

Теперь 100 шкатулок разделим на 9 шкатулок в день и получим 11,11 дней. Соответственно, сообщаем заказчику, что заказ будет готов за 12 дней

Распределим заготовки между мастерами с использованием округления:

Мастер 1: 3 х 11,11 = 33,33 Выдаем 34 заготовки
Мастер 2: 1,5 х 11,11 = 16,66 Выдаем 17 заготовок
Мастер 3: 2 х 11,11 = 22,22 Выдаем 21 заготовку
Мастер 4: 2,5 х 11,11 = 27,77 Выдаем 28 заготовок
А теперь дополним условие и введем индивидуальные тарифные ставки для мастеров за изготовление каждой шкатулки:

Мастер 1 - 1 500 руб
Мастер 2 - 950 руб
Мастер 3 - 1 100 руб
Мастер 4 - 1 150 руб

Рассчитаем для клиента, сколько стоит изготовить 100 шкатулок

34 х 1 500 = 51 000
17 х 950 = 16 150
21 х 1 100 = 23 100
28 х 1 150 = 32 200
Итого: 122 450

А теперь клиент задает нам вопрос, а если бы заказ был не срочный, во сколько минимально он мог бы обойтись? Как Вы думаете?
Показать ответ
Посмотрим еще раз на таблицу с исходными данными:
Мы видим, что мастер 2, который работает медленнее всех - получает меньше всех. Значит, если мы не ограничены во времени и отдадим весь заказ ему, то вся работа будет стоить всего 95 000 (950 руб х 100 шкатулок). Но сколько это займет времени? 100/1,5 = 66,66 дней.
Таким образом, путем простых расчетов и логических рассуждений мы вывели основные отправные точки для диалога с клиентом:

Минимальный срок изготовления: 11,11 дней,
стоимость 122 450

Максимальный срок
изготовления: 66,66 дней,
стоимость 95 000

Разница в сроке составляет 55,55 дней, а в сумме 27 450.

Вполне логично предположить, что клиент может задать вопрос:
А если я дам Вам срок 20 дней или месяц, как изменится стоимость?
Показать ответ
Теоретически это задание можно решить простыми расчетами, но, надеюсь, Вы не затратили много времени на это, потому что нам пора применить опцию Поиск решения, чтобы мгновенно получать результат распределения заказов с учетом любых заданных ограничений!!!

Давайте вместе решим эту задачу с использованием надстройки "Поиск решения"
Создайте новый файл в программе Excel.
Проверьте, есть ли кнопка "Поиск решения" в закладке "Данные", если нет, то здесь инструкция, как ее установить.

Наша цель: как распределить заготовки, чтобы заказ был выполнен за 20 дней и стоимость была минимальной? Сколько будет стоить в этом случае выполнение заказа?

Попытайтесь сами ответить на вопросы и записать ответы:
1. Какие у нас есть константы?
2. Что будет переменными?
3. Целевая функция
4. Ограничения

Показать ответ
Константы: время выполнения заказа и ставка за одну шкатулку по каждому мастеру
Переменные: число заготовок, передаваемое каждому мастеру
Целевая функция: общая стоимость заказа (здесь формула: сумма произведений переменных на ставку за заказ), цель - минимум
Ограничения:
1. Число шкатулок в заказе = фиксированное значение 100 шт
2. Максимальное время для выполнения заказа <= фиксированное значение 20 дней
3. Переменные должны быть выражены неотрицательным и целым числом
А теперь найдите где какие данные расположены в этой таблице:
Показать ответ
Заполните самостоятельно свою исходную таблицу в Excel в любой удобной для Вас форме.

Так выглядит окно Поиск решения
до того, как мы начали его заполнять,
После того, как Вы внесли все исходные данные, запускаем "Поиск решения" (вкладка "Данные"). Я покажу на примере Excel 2007 (Excel 2010 немножко отличается, но сам подход аналогичен).
а так после:
1. Устанавливаем целевую ячейку E13. Это целевая функция, которая равна общей стоимости заказа. Переключаем цель, чтобы она была равной минимальному значению.

2. Вносим диапазон переменных D9:D12 в поле "Изменяя ячейки".

3. Вносим ограничения:
D13 (общее число заготовок) = 100 (внесем не значение 100, а ячейку D3, чтобы в дальнейшем можно было изменить количество шкатулок в задаче)
Диапазон переменных D9:D12 = целые
Диапазон переменных D9:D12 >= 0 (неотрицательные)
F13 (срок выполнения заказа: в эту ячейку внесена формула, которая выбирает максимальное значение из сроков по каждому мастеру, она выглядит так =МАКС(F9:F12)) <= 20 дней (внесем не значение 20, а ячейку D6, чтобы можно было изменять)
Осталось нажать кнопку "Выполнить": переменные будут заполнены и появится окно с результатами. Обратите внимание на комментарий, что все ограничения и условия выполнены и решение найдено, если нет, возможно, исходные данные сформулированы неверно. Если все хорошо, нажимайте ОК, и ячейки с переменными останутся заполненными, если нажмете ОТМЕНА, заполненные данные не сохранятся.

Будьте внимательны! Всегда проверяйте, что написано в окне результаты, потому что результат бывает отрицательным: "Поиск не может найти подходящего решения".
В этом случае данные могут быть заполнены наилучшими по мнению надстройки, но эти данные могут быть неверными и не удовлетворять условию задачи!
Итоговый результат будет выглядеть так:
У Вас получилось? Если что-то непонятно или есть вопросы, скачайте мой файл с решением и проверьте в нем:
Теперь попробуйте самостоятельно рассчитать, сколько будет стоить заказ, если на него можно затратить 30 дней.
Ответ здесь
Ответ: 103 250 руб
Молодцы, кто решил! :) С принципом работы надстройки Поиск решения мы разобрались, а теперь идем дальше - там еще интереснее!
Какой ассортимент выпускать, чтобы получить максимальную прибыль
классика жанра
Я решила не брать в качестве классического примера транспортную задачу, потому что она уже всем надоела, ее традиционно проходят в высших учебных заведениях и по ней написано множество инструкций в интернете.
В качестве классики приведу задачу из курса по управлению эффективностью бизнеса CIMA. Что интересно, сам поиск решения в рамках курса не проходят, а только учат формулировать целевую функцию и ограничения, а затем интерпретировать результаты. Что нужно сделать, чтобы этот результат получить, не знают даже выпускники CIMA!!!, но мы восполним этот пробел и раскроем тайну, как это делается. :)
Приведенную здесь задачу я взяла из курса подготовки к CIMA Кузьмина Михаила Юрьевича, который проходила в 2016 году. Было очень интересно, рекомендую и вам!
Задача
THS производит два продукта из различных комбинаций одних и тех же ресурсов. Ниже приведена информация о продуктах:
THS готовит план производства на следующий месяц. Максимально доступные (за месяц) объемы ресурсов приведены в таблице:
Материал А - 5 000 кг
Материал В - 5 400 кг
Работа оборудования - 3 000 часов
Квалифицированный труд - 4 500 часов

Задание:
Определить оптимальный план производства, максимизирующий прибыль.
Решение
1
Подготовим расчеты для компьютерной обработки данных
Для решения задачи требуется рассчитать маржинальную прибыль по каждому продукту:
Переменные:
х - количество продукта Е
у - количество продукта R

Маржинальная прибыль от всего объема выпуска будет рассчитана по формуле:
35x + 66y
Наша цель: найти такой объем выпуска, который даст максимальное значение
Ограничения:
Материал А: 3х+2у<=5000
Материал В: 4x+3у<=5400
Работа оборудования: 2х+3у<=3000
Квалифицированный труд: 2х+5у<=4500
Объем спроса: y<=1500
Неотрицательность: х>=0, y>=0
2
Подготовим в Excel таблицу для ввода данных
Колонка «Значение»
По строкам 1 и 2 в будет внесено оптимальное количество продуктов. Сейчас их оставляем пустыми, функция сама их заполнит. На эти ячейки ссылаются все последующие формулы.
По строке 3 «Целевая функция» - вносим формулу со ссылкой на ячейки Х и У выше. Пока она равна нулю, ПОИСК РЕШЕНИЯ будет ее максимизировать и заполнит значение.
Далее по строкам 4-10 вносим ограничения в виде формул. Например, 3х+2у, также со ссылками на ячейки Х и У.

Колонка «Ограничение»
Ограничения можно внести как в ячейки на листе, так и непосредственно в окне "Поиск решения". В данном случае они внесены в таблицу, чтобы можно было заполнить формулу в следующей колонке (которая называется "Излишек"), т.к. она участвует в финальной матрице.

Колонка «Излишек»
Здесь вносим формулу: Ограничение - Значение. После того, как функция рассчитает все значения, мы сразу сможем видеть ограниченные ресурсы и излишки.

Итак, таблица готова и выглядит, как приведено выше.
3
Переходим к функции "Поиск решения"
Нажимаем кнопку "Поиск решения" в закладке "Данные" (если нет кнопки, настройка здесь)
Ограничения вносятся так:
Ограничения НЕ ОТРИЦАТЕЛЬНОСТИ можно вносить, выделяя целый диапазон ячеек:
В окне "Результаты поиска решения" проверьте, что решение найдено. И еще выберите тип дополнительного отчета: "Устойчивость", он появится на дополнительном листе, там будет полезная информация о теневой цене (что это, поясню далее).
4
Интерпретация полученных результатов
В итоге таблица выглядит так:
Максимальное значение прибыли 62 625 долл, достигается при выпуске оптимального ассортимента: Продукт Е - 375 ед, Продукт R - 750 ед.

Смотрим колонку "Избыток"

Имеется избыток Материала А и материала В в размере 2 375 ед и 1 650 ед, соответственно.
На продукт У имеется нереализованный спрос 750 ед.

Оборудование и труд являются ограничивающими ресурсами. Это значит, что если бы у нас имелись дополнительные единицы этих ресурсов, мы могли бы произвести еще продукт и получить дополнительную прибыль.

Поиск решения позволяет проводить углубленный анализ модели и рассчитывает "теневую цену" - сложнейшее для понимания экономистов понятие.
Надбавка к номинальной цене за единицу ограниченного ресурса, которую имело бы смысл заплатить, чтобы получить еще одну дополнительную единицу ограниченного ресурса, называется теневая цена.

Теневая цена ограниченного ресурса -это дополнительная маржинальная прибыль, которая возникла бы, если бы имелась одна дополнительная единица ограниченного ресурса, либо потерянная маржинальная прибыль, которая возникла бы, если бы объем ограниченного ресурса был на единицу меньше.


Теневую цену смотрим из отчета по устойчивости:
Теперь объясню, что это значит на цифрах.

Еще одна дополнительная единица продукта, которую мы могли бы произвести, при наличии еще одной единицы ограниченного ресурса, представляет собой условную единицу. Это не одна единица E или R, а условная единица, в состав которой входят и Е, и R в той пропорции, в которой определен оптимальный план

Продукты E и R входят в оптимальный план в пропорции 375:750 или 1:2. Давайте рассмотрим минимальный набор оптимального плана, который включает 3 единицы: 1 единицу продукта Е и 2 единицы продукта R.

Вернемся к таблице с расчетом маржинальной прибыли:
Если мы приобретем все ресурсы, которые входят в состав по тем же ценам, что и прежде, то получим маржинальную прибыль 1 х 35 + 2 х 66 = 167$

Однако ресурс работы оборудования и рабочее время рабочих исчерпаны, а все остальные ресурсы есть. Значит, если мы можем арендовать дополнительную единицу оборудования и нанять еще рабочих, можно было бы доплатить. Сейчас оборудование стоит 7$ в час, труд – 10$ в час и мы и имеем маржинальную прибыль. Теневая цена показывает, что можно доплатить за 1 час работы оборудования - 10,75 (тогда он будет стоить 17,75), а за 1 час труда - 6,75 (будет стоить 16,75) - это максимальные суммы, при которых маржинальная прибыль будет равна нулю:
Итак, мы можем вести переговоры о приобретении дополнительных ресурсов с надбавкой к текущей стоимости в пределах теневой цены и нам это будет выгодно.
Если остались вопросы, скачайте мой файл с решением:
Трансфертные цены
Как установить цену продажи внутри группы, чтобы минимизировать налоги
Когда я писала эту статью, мне очень хотелось придумать задачу на Поиск решения, которая была бы полезна в реальной практике. Я опросила множество экономистов, никто из моих знакомых Поиск решения в своей работе не применял.

А у Вас есть идея,
как применить Поиск решения на практике?

Пишите мне на почту или в комментариях.
Если идея будет рабочая, я составлю задачу и опубликую ее здесь!
За идею задачи про трансфертные цены, которую я привожу в этом разделе, благодарю очень талантливого экономиста Алексея Д.!
Задача
Есть группа из 3 компаний. ООО «Крона» закупает телефоны в Китае, ООО «Стрим» продает телефоны мелкооптовыми партиями по России, ООО «Маркет» торгует телефонами через розничные точки.

Стрим и Маркет закупают телефоны у Кроны. Учитывая, что все 3 юридических лица входят в группу и имеют одного собственника, их можно рассматривать как подразделения одной компании. Перед финансовым директором стоит задача запланировать оптимальные трансфертные цены.
Трансфертная цена – это цена, по которой товары или услуги передаются между подразделениями одной и той же компании.
Имеется следующая информация о показателях деятельности на квартал:
Маркет несет дополнительные расходы в виде 30% процентов от маржинальной прибыли по сделкам, это премия управляющему директору. Сумма премии при выполнении плана реализации в 1000 штук в квартал, не может быть меньше 150 000 руб.

Ограничения:
В целях минимизации налоговых рисков в задаче установлены следующие ограничения:

Цена
Минимальная трансфертная цена не может быть ниже себестоимости, увеличенной на 5%.
Максимальная трансфертная цена для компании не может быть больше чем средняя продажная цена покупателям уменьшенная на 5%.
Цены не должны отличаться между собой не более, чем на 20%.

Прибыль
Прибыль после уплаты налогов по каждой компании должна составить не менее 1% от выручки.
Задание. Найти оптимальные трансфертные цены для реализации с Крона на Стрим и Маркет, при которых прибыль после уплаты налогов будет максимальной.
Показать решение
Оптимальные трансфертные цены должны удовлетворять следующим условиям:

1) распределять налоговую нагрузку внутри компании с целью минимизации налога на прибыль

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

3) обеспечить справедливую оценку деятельности подразделений
Для решения перенесем данные в Excel.
1
Сначала заполним исходные данные, которые будут участвовать в расчетах:
Теперь подготовим поля для переменных. Это 2 ячейки: цена с Кроны на Стрим и цена с Кроны на Маркет. Пока они остаются пустыми, Поиск решений сам их заполнит.
2
Заполним таблицу с финансовыми результатами
Это нужно, чтобы рассчитать результат целевой функции. В формулах уже участвуют ячейки с трансфертными ценами, но пока они не заполнены, итоговые значения в формулах будут нулевыми.
Выручка по Кроне рассчитывается по формуле:
количество единиц, проданных со Стрима, умноженное на трансфертную цену + количество единиц проданных с Маркета, умноженное на трансфертную цену
Выручка по Стриму и Маркету нам известна: умножаем продажи на цену

Себестоимость по Кроне нам известна: умножаем общую сумму продаж со Стрима и Маркета на покупную цену.
По Стриму и Маркету в расчете себестоимости участвуют трансфертные цены, поэтому заполним формулы, но значения пока равны нулю.

Маржинальная прибыль рассчитывается по формуле: выручка минус себестоимость

Налог. Для Кроны и Стрима используется формула маржинальная прибыль на ставку налога, у Маркета другая формула: выручка на 6%.

Премия управляющему: вносим только для Маркета: маржинальная прибыль, умноженная на 30%

Прибыль после уплаты налога по формуле: маржинальная прибыль минус премия минус налог

Целевая функция. Сумма прибыли после уплаты налога по всем компаниям
3
Внесем ограничения
Рядом с премией управляющему сразу установим ограничение >= 150 000

Минимальное ограничение цены: 4 400 х 1,05 = 4 620
Максимальная возможная цена на Стрим: 15 200 х 0,95 = 14 440
Максимальная возможная цена на Маркет: 17 860 х 0,95 = 17 860

Для того, чтобы задать ограничение по диапазону удобно использовать формулу отношение одной цены к другой. Предварительно требуется прикинуть, какая из цен будет стремиться в большую сторону. В данном случае я сделала оценку, что цена на Маркет чем больше, тем лучше, потому что ставка премии управляющему директору выше, чем ставка налога в Кроне, а цена на Стрим, наоборот, чем меньше, чем лучше, потому что ставка налога в Стриме ниже. Можно не делать предварительную оценку, а запустить поиск решения без учета этого ограничения: выяснить максимальную цену, а затем задать ограничение. Ограничение диапазона в пределах 20% будет выглядеть так:
Значение цена на Маркет/цена на Стрим <= 1,2


И последнее ограничение: минимальная сумма прибыли после уплаты налогов. Здесь значение будем задавать через формулу: выручка, умноженная на 1%, потому что на Кроне в зависимости от изменения трансфертных цен выручка будет изменяться.
4
Запускаем Поиск решения
5
Смотрим результат
Прибыль будет максимальной - 23 246 500 руб, если мы установим цену с Кроны на Стрим - 14 100 руб и цену на Маркет - 16 920.
Задача инвестора.
Что построить на участке?
Сможете сами решить?
Инвестор приобрел 400 соток земли под застройку. На участке можно построить 3 типа объектов: коттеджи, дуплексы и пятиэтажные дома на 30 квартир.

Имеется следующая информация об объектах:
По условиям договора с покупателями управляющая компания не может быть заменена в течение 5 лет с момента начала реализации проекта, а значит, управляющая компания инвестора будет получать в дальнейшем прибыль от эксплуатации объекта

Размер инвестиций ограничен суммой 330 млн.

Вопрос: что построить на участке, чтобы в течение 5 лет с начала проекта получить максимальную прибыль и сколько это будет?
Когда я составляла эту задачу, я подгоняла условия, чтобы получить наилучший ответ, который уже был мне известен. Каково же было мое удивление, когда я запустила Поиск решения – и получила совершенно другой результат! Специально пока его не публикую, чтобы было интереснее решать.

А Вы сможете решить эту задачу? Напишите свой ответ в комментариях, и нравятся ли Вам такие задачи? И идеи, идеи!
Как настроить функцию "Поиск решения"
если у вас нет кнопки "Поиск решения" во вкладке "Данные"
Показать как
Поиск решения в Excel расположен на вкладке "Данные"
Если вы у себя в Excel не видите такой кнопки, значит нужно ее настроить. Делается это так. Шаг 1: Открыть "Параметры Excel"
Шаг 2: В открывшемся окне переключиться в закладку «Надстройки», выделить приложение «Поиск решения» и нажать на кнопку «Перейти».

Шаг 3: Появится окно «Надстройки», здесь отметить галочкой надстройку «Поиск решения», нажать «ОК» и все готово.
Понравилась статья? Поделись в соцсетях:

Автор: Елена Позднякова. Основатель кадрового агентства «Финвер». В бухгалтерии и финансах с 1999 года. Подбираю бухгалтеров, которые помогают собственникам развивать бизнес. Умею мотивировать команды и создавать идеальную бухгалтерию. Люблю сложные задачи, восстановление учета и разработку законных схем оптимизации налогообложения.

Решили задачу инвестора или есть новые идеи? а может возникли вопросы? Давайте обсудим в комментариях или пишите мне на почту: elena@finver.ru и добавляйтесь ко мне в друзья в "Вконтакте".
Подпишитесь, чтобы первыми узнать о публикации статей
comments powered by HyperComments
Made on
Tilda