Excel поиск решения ошибки

Поиск решения в Microsoft Excel

Одной из самых интересных функций в программе Microsoft Excel является Поиск решения. Вместе с тем, следует отметить, что данный инструмент нельзя отнести к самым популярным среди пользователей в данном приложении. А зря. Ведь эта функция, используя исходные данные, путем перебора, находит наиболее оптимальное решение из всех имеющихся. Давайте выясним, как использовать функцию Поиск решения в программе Microsoft Excel.

Включение функции

Можно долго искать на ленте, где находится Поиск решения, но так и не найти данный инструмент. Просто, для активации данной функции, нужно её включить в настройках программы.

Для того, чтобы произвести активацию Поиска решений в программе Microsoft Excel 2010 года, и более поздних версий, переходим во вкладку «Файл». Для версии 2007 года, следует нажать на кнопку Microsoft Office в левом верхнем углу окна. В открывшемся окне, переходим в раздел «Параметры».

Переход в раздел Параметры в Microsoft Excel

В окне параметров кликаем по пункту «Надстройки». После перехода, в нижней части окна, напротив параметра «Управление» выбираем значение «Надстройки Excel», и кликаем по кнопке «Перейти».

Переход в надстройки в Microsoft Excel

Открывается окно с надстройками. Ставим галочку напротив наименования нужной нам надстройки – «Поиск решения». Жмем на кнопку «OK».

Активация функции Поиск решения в Microsoft Excel

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

Функция поиск решения активирована в Microsoft Excel

Подготовка таблицы

Теперь, после того, как мы активировали функцию, давайте разберемся, как она работает. Легче всего это представить на конкретном примере. Итак, у нас есть таблица заработной платы работников предприятия. Нам следует рассчитать премию каждого работника, которая является произведением заработной платы, указанной в отдельном столбце, на определенный коэффициент. При этом, общая сумма денежных средств, выделяемых на премию, равна 30000 рублей. Ячейка, в которой находится данная сумма, имеет название целевой, так как наша цель подобрать данные именно под это число.

Целевая ячейка в Microsoft Excel

Коэффициент, который применяется для расчета суммы премии, нам предстоит вычислить с помощью функции Поиска решений. Ячейка, в которой он располагается, называется искомой.

Искомая ячейка в Microsoft Excel

Lumpics.ru

Целевая и искомая ячейка должны быть связанны друг с другом с помощью формулы. В нашем конкретном случае, формула располагается в целевой ячейке, и имеет следующий вид: «=C10*$G$3», где $G$3 – абсолютный адрес искомой ячейки, а «C10» — общая сумма заработной платы, от которой производится расчет премии работникам предприятия.

Связующая формула в Microsoft Excel

Запуск инструмента Поиск решения

После того, как таблица подготовлена, находясь во вкладке «Данные», жмем на кнопку «Поиск решения», которая расположена на ленте в блоке инструментов «Анализ».

Запуск поиска решений в Microsoft Excel

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

Переход к вводу целевой ячейки в Microsoft Excel

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

Выбор целевой ячейки в Microsoft Excel

Под окном с адресом целевой ячейки, нужно установить параметры значений, которые будут находиться в ней. Это может быть максимум, минимум, или конкретное значение. В нашем случае, это будет последний вариант. Поэтому, ставим переключатель в позицию «Значения», и в поле слева от него прописываем число 30000. Как мы помним, именно это число по условиям составляет общую сумму премии для всех работников предприятия.

Установка значения целевой ячейки в Microsoft Excel

Ниже расположено поле «Изменяя ячейки переменных». Тут нужно указать адрес искомой ячейки, где, как мы помним, находится коэффициент, умножением на который основной заработной платы будет рассчитана величина премии. Адрес можно прописать теми же способами, как мы это делали для целевой ячейки.

Установка искомой ячейки в Microsoft Excel

В поле «В соответствии с ограничениями» можно выставить определенные ограничения для данных, например, сделать значения целыми или неотрицательными. Для этого, жмем на кнопку «Добавить».

Добавление ограничения в Microsoft Excel

После этого, открывается окно добавления ограничения. В поле «Ссылка на ячейки» прописываем адрес ячеек, относительно которых вводится ограничение. В нашем случае, это искомая ячейка с коэффициентом. Далее проставляем нужный знак: «меньше или равно», «больше или равно», «равно», «целое число», «бинарное», и т.д. В нашем случае, мы выберем знак «больше или равно», чтобы сделать коэффициент положительным числом. Соответственно, в поле «Ограничение» указываем число 0. Если мы хотим настроить ещё одно ограничение, то жмем на кнопку «Добавить». В обратном случае, жмем на кнопку «OK», чтобы сохранить введенные ограничения.

Параметры ограничения в Microsoft Excel

Как видим, после этого, ограничение появляется в соответствующем поле окна параметров поиска решения. Также, сделать переменные неотрицательными, можно установив галочку около соответствующего параметра чуть ниже. Желательно, чтобы установленный тут параметр не противоречил тем, которые вы прописали в ограничениях, иначе, может возникнуть конфликт.

Установка неотрицательных значений в Microsoft Excel

Дополнительные настройки можно задать, кликнув по кнопке «Параметры».

Переход к параметрам поиска решений в Microsoft Excel

Здесь можно установить точность ограничения и пределы решения. Когда нужные данные введены, жмите на кнопку «OK». Но, для нашего случая, изменять эти параметры не нужно.

Параметры Поиска решения в Microsoft Excel

После того, как все настройки установлены, жмем на кнопку «Найти решение».

Переход к поиску решения в Microsoft Excel

Далее, программа Эксель в ячейках выполняет необходимые расчеты. Одновременно с выдачей результатов, открывается окно, в котором вы можете либо сохранить найденное решение, либо восстановить исходные значения, переставив переключатель в соответствующую позицию. Независимо от выбранного варианта, установив галочку «Вернутся в диалоговое окно параметров», вы можете опять перейти к настройкам поиска решения. После того, как выставлены галочки и переключатели, жмем на кнопку «OK».

Результаты поиска решений в Microsoft Excel

Если по какой-либо причине результаты поиска решений вас не удовлетворяют, или при их подсчете программа выдаёт ошибку, то, в таком случае, возвращаемся, описанным выше способом, в диалоговое окно параметров. Пересматриваем все введенные данные, так как возможно где-то была допущена ошибка. В случае, если ошибка найдена не была, то переходим к параметру «Выберите метод решения». Тут предоставляется возможность выбора одного из трех способов расчета: «Поиск решения нелинейных задач методом ОПГ», «Поиск решения линейных задач симплекс-методом», и «Эволюционный поиск решения». По умолчанию, используется первый метод. Пробуем решить поставленную задачу, выбрав любой другой метод. В случае неудачи, повторяем попытку, с использованием последнего метода. Алгоритм действий всё тот же, который мы описывали выше.

Выбор метода решения в Microsoft Excel

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

 

Дмитрий

Пользователь

Сообщений: 7
Регистрация: 24.09.2020

Добрый день.
Задача: распределить выпуск по времени с приоритетом «чем раньше, тем лучше».
Не могу понять, почему Поиск решения не справляется с такой задачей.
В прикрепленном файле, для примера, 3 продукта требуется распределить по времени выпуска с 07 до 15 часов с часовым интервалом. Известна общая потребность и дополнительное условие — часть продукции должна быть выпущена ровно в определенное время.
Для выполнения условия «чем раньше, тем лучше» я строю дополнительную таблицу, совпадающую по размеру с таблицей переменных и для каждого столбца даю порядковый номер (от 1 до 9 в примере), после этого подставляю в эту таблицу значения на основе значений из таблицы переменных: если значение в таблице переменных присутствует, то ставлю 1, если отсутствует — 0 и далее перемножаю полученное значение на порядковый номер столбца. Получается, что для соблюдения условия «чем раньше, тем лучше» сумма получаемых значений должна быть минимальной.
Поиск решения при использовании метода ОПГ распределяет равномерно по каждому дню; при эволюционном методе просит верхние ограничения переменных и всё равно неоптимально распределяет выпуск.
Подскажите, в чем ошибка?
Возможно, для такой задачи требуется использовать другие инструменты Excel или другие параметры в Поиске решения?
Спасибо.

 

Андрей VG

Пользователь

Сообщений: 11878
Регистрация: 22.12.2012

Excel 2016, 365

#2

24.09.2020 13:45:33

Доброе время суток

Цитата
Дмитрий написал:
или другие

критерии оптимальности. Так как по текущим — всё выполнено.

 

Дмитрий

Пользователь

Сообщений: 7
Регистрация: 24.09.2020

#3

24.09.2020 13:56:05

День добрый.
Не очень понял

Цитата
Андрей VG написал:
Так как по текущим — всё выполнено.

Целевая функция — не минимизируется. Минимальное значение целевой функции при текущих параметрах должно быть 10. У меня не получилось добиться от Поиска решения такого значения.
Я напрямую забил 10 в значение целевой функции — «В ходе поиска не удалось найти подходящего решения».
Какое значение целевой функции система выдает у вас?
Если при текущих критериях принципиально невозможно получить требуемое значение целевой функции — какого рода критерии посоветуете применить?

 

Дмитрий

Пользователь

Сообщений: 7
Регистрация: 24.09.2020

Поднимаю вопрос.
Самому разобраться до сих пор не удалось.
Надеюсь на помощь сообщества.

 

а что мешает в 7:00 выпустить 1271 шт. продукта1 и 1583 шт. продукта3
итого:
процесс завершен в 7:00
все что нужно было к 10:00, готово уже в 7:00
что еще?

Программисты — это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете!

 

Дмитрий

Пользователь

Сообщений: 7
Регистрация: 24.09.2020

Игорь, добрый день.
В принципе-то ничего не мешает. Вопрос в том, что Поиск решения не дает такого варианта, хотя он был бы оптимальным.
В данном примере можно предположить, что выпуск в 10-00 обозначенного объема — это требование свежести продукции — выпустить в определенный момент по предзаказу определенный ассортимент для передачи конечному потребителю.
Далее я в эти ограничения забью максимальную часовую производительность.
Но пока я не добился от Поиска решения стабильной работы на маленьком количестве данных — не хочу переходить к следующему шагу.

 

Gata

Пользователь

Сообщений: 14
Регистрация: 18.04.2015

Дмитрий, по заданным Вами ограничениям поиск не понимает, каким образом ему нужно рассчитать и распределить суммы выпуска во времени, поэтому он либо размазывает его равномерно, либо выполняет условие на 10 часов, а прочие игнорирует и завершает итерационный процесс. В первом варианте для него минимум целевой функции  =34, в последнем =8. Т.е. он сначала выполняет ограничение по выпуску на 10 часов, а далее сам «догадаться», что вы хотите остаток бросить одной суммой на ранее время — не может. Не заданы ему такие параметры, в качестве изменяемых ячеек — целый массив и он его заполняет, как умеет. Нигде не указан метод как дробить потребность и он выдает локальное решение в виде равномерного распределения, либо просто не дает глобального решения. Ваша задача поиском решаема, если в качестве изменяемых ячеек задавать структуру распределения, а не саму сумму. Пример прилагаю, но пришлось еще дополнительную таблицу сделать для сумм по продуктам, которые нужно раскидать по часам. Вот так поиск находит целевое, равное 10. Рекомендую копать в этом направлении при постановке задачи.

 

Дмитрий

Пользователь

Сообщений: 7
Регистрация: 24.09.2020

#8

01.10.2020 11:54:49

Gata,спасибо большое! Стало гораздо понятнее.
Я не дошел в рассуждениях до вспомогательной таблицы с коэффициентами и поиском значений этих коэффициентов вместо поиска итоговых значений выпуска.
Проверил — теперь можно регулировать шаг расчета путем задания верхнего ограничения на коэффициенты и получить распределение с дополнительным ограничением по производительности так, чтобы фактический выпуск на каждый час не был кратен максимальной часовой производительности (это я заменил таблицу ограничений по максимальной сумме выпуска).
К тому же, это соотносится с задачей по «вертикальному» ограничению — на столбец (максимально возможное количество выпущенных изделий зависит от места на складе) — я не стал о нем упоминать, чтобы не перегружать задачу. Теперь и по нему работает.
Ещё раз благодарю.

Наряду со множеством других возможностей, в Microsoft Excel есть одна малоизвестная, но очень полезная функция под названием “Поиск решения”. Несмотря на то, что найти и освоить ее, может быть, непросто, ее изучение и применение может помочь в решении огромного количества задач. Функция берет данные, перебирает их и выдает самое оптимальное решение из возможных. Итак, давайте разберемся, как именно работает поиск решения и попробуем применить данную функцию на практике

Содержание

  • Как включить функцию “Поиск решения”
  • Подготовительный этап
  • Применение функции и ее настройка
  • Заключение

Как включить функцию “Поиск решения”

Несмотря на свою эффективность, функция “Поиск решения” не находится в первых рядах панели инструментов или контекстного меню. Многие пользователи, работающие в Excel годами, даже не подозревают о ее существовании. Дело в том, что по умолчанию она вообще отключена и для ее добавления на ленту нужно проделать следующие шаги:

  1. Открываем меню “Файл”, кликнув по соответствующему названию.Как включить функцию
  2. Кликаем по разделу “Параметры”, который находится внизу вертикального перечня с левой стороны.Как включить функцию
  3. Далее щелкаем по подразделу “Надстройки”. Здесь отображаются все надстройки программы, а внизу будет надпись “Управление”. Справа от нее представлено выпадающее меню, в котором должны быть выбраны “Надстройки Excel”, обычно уже установленные по умолчанию. Нажимаем кнопку “Перейти”.Как включить функцию
  4. На экране появится новое вспомогательное окно “Надстройки”. Устанавливаем флажок напротив опции “Поиск решения” и нажимаем ОК.Как включить функцию
  5. Все готово. Требуемая функция появится на ленте в правой части вкладки “Данные”.Как включить функцию

Подготовительный этап

Добавить функцию на ленту программы – половина дела. Нужно еще понять принцип ее работы.

Итак, у нас есть данные про продаже товаров, представленные в табличном виде.

Подготовительный этап перед использованием фукнции

И перед нами стоит задача – назначить каждому товару скидку таким образом, чтобы сумма по всем скидкам составила 4,5 млн. рублей. Она должна отобразиться в отдельной ячейке, которая называется целевой. Ориентируясь на нее мы должны рассчитать остальные значения.

Подготовительный этап перед использованием фукнции

Наша задача – вычислить скидку, на которую будут умножены все суммы по продажам всех наименований. Она и будет найдена с помощью функции “Поиск решения”, а ячейка с этой скидкой будет называется искомой.

Данные ячейки (искомая и целевая) связываем вместе формулой, которую пишем в целевой ячейке следующим образом: =D13*$G$2, где ячейка D13 содержит итоговую сумму по продажам всех товаров, а ячейка $G$2 – абсолютные (неизменные) координаты искомой ячейки.

Подготовительный этап перед использованием фукнции

Применение функции и ее настройка

Формула готова. Теперь нужно применить саму функцию.

  1. Переключаемся во вкладку “Данные” и нажимаем кнопку “Поиск решения”.Применение функции
  2. Откроются “Параметры”, где необходимо задать нужные настройки. В поле “Оптимизировать целевую функцию:” указываем адрес целевой ячейки, где планируется вывести сумму по всем скидкам. Можно прописать координаты вручную, либо выбрать из таблицы, для чего сначала кликаем по области ввода, затем – по нужной ячейке.Применение функции
  3. Переходим к настройке других параметров. В пункте “До:” можно задать максимальную границу, минимальную границу или же точное число. Исходя из поставленной задачи ставим отметку рядом с опцией “Значение” и набираем “4500000” – сумма скидок по всем наименованиям.Применение функции
  4. Следующее для заполнения поле – “Изменяя значения переменных:”. В него нужно внести координаты искомой ячейки, содержащей определенное значение. Это значение и есть та самая скидка, которую мы пытаемся вычислить. Также, как и с выбором целевой ячейки, координаты можно написать вручную, либо кликнуть по нужной ячейке в самой таблице.Применение функции
  5. Теперь нужно отредактировать раздел “В соответствии с ограничениями:”, в котором задаем ограничения используемых данных. Например, можно исключить десятичные дроби или, скажем, отрицательные числа. Это делается через кнопку “Добавить”. Применение функции
  6. Откроется вспомогательно окно, позволяющее добавить ограничения во время вычислений. В первом поле указываем координаты определенной ячейки или области ячеек, для которых это условие должно действовать. Согласно нашей задаче, указываем координаты искомой ячейки, в которой будет выводиться значение скидки. Следующий шаг – определить знак сравнения. Устанавливаем “больше или равно”, чтобы итоговое число не могло быть отрицательным. “Ограничение”, которое устанавливается в третьем поле, в этом случае будет равно цифре 0, поскольку именно относительно этого значения задается условие.Применение функции Можно установить еще одно ограничение с помощью кнопки “Добавить”. Дальнейшие действия по его настройке будут аналогичными. По готовности щелкаем OK.
  7. После выполнения описанных выше действий в самом большом поле окна появится установленное только что ограничение. Список может быть довольно большим и зависит от сложности предполагаемых расчетов, но в данном случае будет достаточно и одного условия.Применение функции Под этим полем также есть опция, позволяющая делать все остальные переменные, не затрагиваемые ограничениями, неотрицательными. Однако, будьте внимательны и проследите за тем, чтобы между этим параметром и поставленными ограничениями не было противоречия, иначе при расчете в программе может возникнуть конфликт.
  8. Также можно задать немалое количество дополнительных настроек. Чуть ниже справа есть кнопка “Параметры”, позволяющая это сделать. Нажимаем на нее и открываем новое окно.Применение функции
  9. В этих настройках у нас есть возможность установить “Точность ограничения” и “Пределы решения”. В нашем случае задавать данные параметры нет необходимости, поэтому после ознакомления с представленным окном, его можно закрыть, нажав OK.Применение функции
  10. Итак, все настройки выполнены и параметры установлены. Пора запускать функцию – для этого нажимаем кнопку “Найти решение”.Применение функции
  11. После этого программа сделает все необходимые расчеты и выдаст результаты в нужных ячейках. При этом сразу же откроется окно “Результаты поиска решения”, где можно сохранить/отменить результаты или настроить параметры поиска заново. Если результаты нас устраивают, оставляем отметку напротив опции “Сохранить найденное решение” и нажимаем ОК. При этом, если мы предварительно установим галочку слева от надписи “Вернуться в диалоговое окно параметров поиска решения”, после того, как мы щелкнем OK, мы обратно переключимся к настройке функции поиска решения.Применение функции
  12. Вполне вероятно, что расчеты могут показаться неправильными, либо возникнет желание немного изменить исходные данные и получить другой результат. В этом случае нужно снова открыть окно с параметрами поиска решения и внимательно посмотреть поля с введенными данными.
  13. Если с данными все нормально, можно попробовать задействовать другой метод решения. Для этого щелкаем по текущему варианту и из раскрывшегося перечня выбираем способ, который нам кажется наиболее подходящим:
    • Первый – ищет решение методом обобщенного приведенного градиента (ОПГ) для нелинейных задач. Стандартно выбран именно этот вариант, но можно попробовать и другие.
    • Второй – пытается отыскать решение для линейных задач, используя симплекс-метод.
    • Третий – для выполнения поставленной задачи использует эволюционный поиск.
    • В том случае, если ни один из методов не принес удовлетворительных результатов, стоит проверить данные в таблице и параметрах еще раз, поскольку именно это является самой частой ошибкой в подобного рода задачах.Применение функции
  14. Теперь, когда мы получили требуемую скидку, осталось ее применить, чтобы рассчитать суммы скидок по всем наименованиям. Для этого отмечаем первую ячейку столбца “Сумма скидки”, пишем в ней формулу “=D2*$G$2” и нажимаем Enter. Знаки доллара ставятся для того, чтобы при растягивании/копировании формулы на другие строки, ячейка G2 со скидкой оставалась неизменной в расчетах.Применение функции
  15. Мы получили сумму скидки для первого наименования. Теперь наводим курсор на нижний правый угол ячейки с результатом, как только он поменяет форму на крестик, зажав левую кнопку мыши растягиваем формулу на все строки, по которым хотим посчитать аналогичную сумму.Применение функции
  16. Теперь наша таблица полностью готова в соответствии с поставленной задачей.Применение функции

Заключение

Таким образом, функция “Поиск решения” в Эксель может помочь в решении определенных задач, которые достаточно сложно или невозможно решить простыми методами. Однако, проблема в использовании данного способа заключается в том, что по умолчанию данная функция скрыта в программе, из-за чего многие пользователи не догадываются о ее существовании. Также функция довольно трудна в освоении и использовании, но при ее должном изучении, она может принести значительную пользу и облегчить работу.

Поиск решения не проходит через ячейку с функцией «если»

Wilson

Дата: Пятница, 06.11.2015, 15:13 |
Сообщение № 1

Группа: Пользователи

Ранг: Прохожий

Сообщений: 4


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Добрый день. Проблема в следующем:
Поиск решения не корректно работает, если на пути между изменяемыми ячейками и целевой есть ячейки с функцией «если», в которых ячейке присваивается определенное значение, в зависимости от предыдущих вычислений. На слух наверное ужасно выглядит, поэтому прилагаю файл.
Сейчас в целевой ячейке значение 25. Путем изменения ячеек А1 и В1 можно добиться, чтобы целевая ячейка была равна 30, но поиск решения эти значения не находит, хотя пишет, что решение найдено (ничего при этом не меняется нигде).
Буду очень признателен, если поможете решить эту проблему. Отмечу, что это файл созданный лишь для примера, который отражает суть проблемы.

 

Ответить

Wilson

Дата: Пятница, 06.11.2015, 15:18 |
Сообщение № 2

Группа: Пользователи

Ранг: Прохожий

Сообщений: 4


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Поиск решения ищет максимальное значение целевой ячейки, изменяя А1 и В1 от 1 до 10 (целые числа)

 

Ответить

Pelena

Дата: Пятница, 06.11.2015, 15:26 |
Сообщение № 3

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

Здравстуйте.

целевая ячейка была равна 30

Почему 30? Максимальное при таком раскладе 35
Используйте эволюционный поиск решения и под кнопкой Параметры снимите флажок Игнорировать целочисленные ограничения


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

Wilson

Дата: Пятница, 06.11.2015, 15:35 |
Сообщение № 4

Группа: Пользователи

Ранг: Прохожий

Сообщений: 4


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Ну 30 я для примера написал)
А что такое эволюционный поиск решения? Извините на нубство, но я не в курсе. И у меня в поиске решений в параметрах нет флажка «Игнорировать целочисленные ограничения». Есть лишь:
-Линейная модель
-Неотрицательные значения
-Автоматическое масштабирование
-Показывать результаты итераций

Заранее спасибо!

 

Ответить

Pelena

Дата: Пятница, 06.11.2015, 15:53 |
Сообщение № 5

Группа: Админы

Ранг: Местный житель

Сообщений: 18797


Репутация:

4284

±

Замечаний:
±


Excel 2016 & Mac Excel

См. рисунок


«Черт возьми, Холмс! Но как??!!»
Ю-money 41001765434816

 

Ответить

Wilson

Дата: Пятница, 06.11.2015, 18:59 |
Сообщение № 6

Группа: Пользователи

Ранг: Прохожий

Сообщений: 4


Репутация:

0

±

Замечаний:
0% ±


Excel 2007

Низкий поклон! Можно закрывать.

 

Ответить

«Поиск решения» является надстройкой Эксель, посредством которой возможно подобрать лучшее решение задач на основе указанных ограничений. Функция дает возможность составлять график работников, распределять расходы либо инвестиционные вложения. Знание принципа работы такой функции поможет сэкономить время и силы.

Содержание

  1. Что такое Поиск решений
  2. Как включить функцию «Поиск решения»
  3. О моделях
  4. Подготовительный этап
  5. Применение функции и ее настройка
  6. Загрузить/сохранить параметры Поиска решений
  7. Простой пример использования Поиска решения
  8. Поиску решения не удалось найти решения
  9. Заключение

Что такое Поиск решений

В комплексе с различными другими опциями в Excel существует одна менее популярная, однако крайне нужная функция «Поиск решения». Невзирая на то, что отыскать ее бывает нелегко, ознакомление с ней и использование помогает в разрешении множества задач. Опция обрабатывает данные и выдает оптимальное решение из допустимых. В статье описывается, как непосредственно функционирует «Поиск решения».

Как включить функцию «Поиск решения»

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

  1. Открываем «Файл», нажимая на соответствующее название.
  2. Кликаем на раздел «Параметры».
  3. Затем выбираем подраздел «Надстройки». Тут будут отображены все надстройки программы, внизу появится надпись «Управление». С правой стороны от нее будет всплывающее меню, где следует выбрать «Надстройки Excel». Потом нажимаем «Перейти».
    funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami
    1
  4. На мониторе высветится дополнительное окно «Надстройки». Устанавливаем флажок возле искомой функции и кликаем «ОК».
  5. Нужная функция появится на ленте справа от раздела «Данные».

О моделях

Данная информация будет крайне полезна тем, кто лишь ознакамливается с понятием «оптимизационная модель». До того, как воспользоваться «Поиском решения», рекомендуется исследовать материалы о методах построения моделей:

  • рассматриваемая опция даст возможность выявить оптимальный метод, чтобы осуществить выделение средств на вложения, загрузку помещения, поставку товаров либо иные действия, где необходимо отыскать оптимальный вариант решения.
  • «Оптимальный метод» в такой ситуации будет означать: увеличение доходов, снижение трат, улучшение качества и др.

Типовые задачи по оптимизации:

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

Важно! Чтобы формализовать поставленную задачу, необходимо создать модель, отражавшую основные параметры предметной области. В Эксель модель является комплексом формул, использующих переменные. Рассматриваемая опция подыскивает такие показатели, чтобы целевая функция была больше (меньше) либо равнялась указанному значению.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

2

Подготовительный этап

Перед тем как разместить функцию на ленте, необходимо изучить принцип функционирования опции. К примеру, есть сведения по реализации товаров, указанные в таблице. Задачей является назначение для каждого наименования скидки, которая составляла бы 4.5 млн. рублей. Параметр отображается внутри ячейки, именуемой целевой. Отталкиваясь от нее, рассчитываются прочие параметры.

Нашей задачей станет вычисление скидки, на которую умножаются суммы по реализации различной продукции. Эти 2 элемента связываются формулой, прописываемой так: =D13*$G$2. Где в D13 прописывается суммарное количество по реализации, а $G$2 – адрес искомого элемента.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

3

Применение функции и ее настройка

Когда формула будет готова, необходимо использовать непосредственно саму функцию:

  1. Нужно переключиться в раздел «Данные» и нажать «Поиск решения».

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

4
  1. Откроются «Параметры», где задаются требуемые настройки. В строке «Оптимизировать целевую функцию:» следует указать ячейку, где выводится сумма по скидкам. Есть возможность прописать координаты самостоятельно или выбрать из документа.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

5
  1. Далее нужно перейти к настройкам прочих параметров. В разделе «До:» есть возможность задать максимальную и минимальную границу либо точное число.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

6
  1. Потом заполняется поле «Изменяя значения переменных:». Здесь вносятся данные искомой ячейки, которая содержит конкретное значение. Координаты прописываются самостоятельно или кликается соответствующая ячейка в документе.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

7
  1. Затем редактируется вкладка «В соответствии с ограничениями:», где задаются ограничения применяемых данных. К примеру, исключаются десятичные дроби либо отрицательные числа.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

8
  1. После открывается окно, которое позволяет добавлять ограничения при расчетах. В начальной строке указываются координаты ячейки либо целого диапазона. Следуя условиям задачи, указываются данные искомой ячейки, где выводится показатель скидки. Затем определяется знак сравнения. Устанавливается «больше либо равно», чтобы конечное значение не было со знаком «минус». «Ограничение», устанавливаемое в 3 строке, в такой ситуации равняется 0. Возможно выставить также ограничение посредством «Добавить». Последующие действия аналогичны.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

9
  1. Когда выполнены вышеописанные действия, в самой большой строке появляется установленное ограничение. Перечень бывает большим и будет зависеть от сложности расчетов, однако в конкретной ситуации достаточно 1 условия.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

10
  1. Кроме того, возможно выбирать другие дополнительные настройки. Внизу с правой стороны присутствует опция «Параметры», которая позволяет это сделать.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

11
  1. В настройках можно выставить «Точность ограничения» и «Пределы решения». В нашей ситуации использовать эти опции нет нужды.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

12
  1. Когда настройки завершены, запускается сама функция – нажимается «Найти решение».

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

13
  1. После программа проводит требуемые расчеты и выдает конечные расчеты в необходимых ячейках. Потом открывается окно с результатами, где сохраняются/отменяются итоги либо настраиваются параметры поиска по новой. Когда данные соответствуют требованиям, то найденное решение сохраняется. Если заранее установить отметку «Вернуться в диалоговое окно параметров поиска решения», будет открыто окно с настройками функции.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

14
  1. Есть вероятность, что расчеты оказались ошибочными или есть необходимость в изменении исходных данных в целях получения других показателей. В такой ситуации требуется вновь открыть окно с настройками и перепроверить сведения.
  2. Когда данные точны, можно воспользоваться альтернативным методом. В этих целях нужно нажать на текущий вариант и из появившегося списка выбрать самый подходящий способ:
  • Поиск решения посредством обобщенного градиента для нелинейных задач. По умолчанию применяется такой вариант, однако возможно воспользоваться и другими.
  • Поиск решения для линейных задач на основе симплекс-метода.
  • Использование эволюционного поиска в целях выполнения задачи.

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

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

15
  1. Когда получена искомая скидка, остается ее применить для подсчета суммы скидок по каждому наименованию. В этих целях выделяется начальный элемент столбика «Сумма скидки», прописывается формула «=D2*$G$2» и жмется «Enter». Значки доллара проставляются, чтобы во время растягивания формулы на смежные строчки G2 не изменялась.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

16
  1. Теперь будет получена сумма скидки для начального наименования. Затем следует навести курсор на угол ячейки, когда он станет «плюсом», зажимается ЛКМ и формула растягивается на необходимые строки.
  2. После этого таблица будет окончательно готова.

Загрузить/сохранить параметры Поиска решений

Данная опция полезна при применении различных вариантов ограничений.

  1. В меню «Параметры поиска решения» следует нажать «Загрузить/сохранить».
  2. Вводится диапазон для области модели и нажимается «Сохранить или Загрузить».

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

17

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

Важно! Для сохранения последних настроек в меню «Параметры поиска решения» сохраняется книга. Каждый лист в ней имеет собственные параметры надстройки «Поиск решения». Помимо того, для листа возможно выставить больше 1 задачи при нажатии кнопки «Загрузить или сохранить» в целях сохранения отдельных задач.

Простой пример использования Поиска решения

Нужно провести загрузку контейнера тарой, чтобы его масса была максимальной. Емкость обладает объемом в 32 куб. м. Наполненная коробка имеет вес в 20 кг, ее объем равен 0,15 куб. м. Ящик – 80 кг и 0,5 куб. м. Требуется, чтобы общее число тары составляло не менее 110 шт. Данные организовываются так:

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

18

Переменные модели отметим зеленым. Целевая функция выделяется красным. Ограничения: по наименьшему количеству тары (больше либо равно 110) и по массе (=СУММПРОИЗВ(B8:C8;B6:C6) – суммарный вес тары, находящейся в контейнере.

По аналогии считаем общий объем: =СУММПРОИЗВ(B7:C7;B8:C8). Такая формула необходима, чтобы выставить ограничение на суммарный объем тары. Потом посредством «Поиск решения» вводятся ссылки на элементы с переменными, формулами и самими показателями (либо ссылки на конкретные ячейки). Разумеется, что количество тары – целое число (также является ограничением). Нажимаем «Найти решение», в результате чего находится такое число тары, когда общая масса максимальна и учтены все ограничения.

Поиску решения не удалось найти решения

Такое уведомление выскакивает, когда рассматриваемая функция не нашла сочетаний показателей переменных, удовлетворяющих каждому ограничению. При использовании Симплекс-метода вполне возможно, что решения нет.

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

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

В любой ситуации изначально следует изучить модель на отсутствие противоречия ограничений. Зачастую подобное взаимосвязано с ненадлежащим подбором соотношения либо предельного показателя.

В вышеуказанном примере показатель максимального объема указан 16 куб. м вместо 32, потому такое ограничение противоречит показателям по минимальным количествам мест, поскольку ему будет соответствовать число 16,5 куб. м.

funkciya-poisk-resheniya-v-excel-vklyuchenie-primer-ispolzovaniya-so-skrinshotami

19

Заключение

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

Оцените качество статьи. Нам важно ваше мнение:

12 / 8 / 6

Регистрация: 10.07.2011

Сообщений: 374

Записей в блоге: 1

1

Функция «Поиск решений» со вкладки Анализ

05.02.2018, 09:36. Показов 10595. Ответов 4


Студворк — интернет-сервис помощи студентам

Использую функция «Поиск решений» со вкладки Анализ для решения задачи «о ранце» с определенными ограничениями.
Изменяемых переменных около 75 штук. Первый раз я могу найти решение задачи, но при повторном вызове этой же функции выдается ошибка «При поиске решения обнаружено значение ошибки в ячейке целевой функции или ячейке ограничения. Одна из ячеек на листе получает значение ошибки, когда при поиске решения определенные значения подставляются в ячейки переменных.» Кроме того, сохранить сценарий я тоже не могу, т.к. получаю сообщение «Слишком много ячеек переменных. Сценарий может иметь не более 32 переменных.».
Есть ли способы обхода данных ошибок таким образом, чтобы не сбрасывать и перенабирать все параметры, необходимые для использования функции «Поиск решения»?
P.s. Версия программы – MS Excel 2016.



0



15136 / 6410 / 1730

Регистрация: 24.09.2011

Сообщений: 9,999

05.02.2018, 11:00

2

Лучший ответ Сообщение было отмечено Bohes как решение

Решение

Bohes,

Цитата
Сообщение от другой форум

Есть ещё надстройка opensolver, в ней значительно больше возможных изменяем переменных, правда реализовано только линейное программирование

Перепишите формулы так, чтобы не было ошибки при любых значениях параметров, или добавьте ограничения типа «переменные > 0».



0



12 / 8 / 6

Регистрация: 10.07.2011

Сообщений: 374

Записей в блоге: 1

05.02.2018, 12:59

 [ТС]

3

Цитата
Сообщение от Казанский
Посмотреть сообщение

Bohes, Перепишите формулы так, чтобы не было ошибки при любых значениях параметров, или добавьте ограничения типа «переменные > 0».

И так стоит галочка «сделать переменные без ограничений неотрицательными».



0



11482 / 3773 / 677

Регистрация: 13.02.2009

Сообщений: 11,145

06.02.2018, 11:35

4

«переменные > 0» и «неотрицательными» равнозначны?



0



12 / 8 / 6

Регистрация: 10.07.2011

Сообщений: 374

Записей в блоге: 1

07.02.2018, 05:03

 [ТС]

5

Цитата
Сообщение от Казанский
Посмотреть сообщение

Перепишите формулы так, чтобы не было ошибки при любых значениях параметров

Так и сделал. Проблема решилась.



0



Содержание

  • Как исправить ошибку #ПЕРЕНОС! в Excel
  • Как исправить ошибку #ЗНАЧ! в Excel
  • Как исправить ошибку #ПУСТО! в Excel
  • Как исправить ошибку #ИМЯ? в Excel

Как исправить ошибку #ПЕРЕНОС! в Excel

Прежде чем рассмотреть ошибку #ПЕРЕНОС! (#SPILL), рассмотрим, что такое перенос. В Excel это означает, что формула возвращает несколько значений (массив), и они автоматически переносятся в соседние ячейки.

Диапазон переноса и значения внутри будут изменяться при обновлении источника данных.

Ошибка #ПЕРЕНОС! возникает, когда формула возвращает несколько значений, но Excel не может вывести один или несколько результатов.

У ошибки может быть множество причин. Поиск решения будет зависеть от используемой версии Excel.

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

Рассмотрим решения, которые подойдут для наиболее распространенных вариаций этой ошибки.

Диапазон для переноса содержит одну или более ячеек с значениями

Решение: очистить диапазон для переноса.

распространенные ошибки в Excel, как исправить ошибку#ПЕРЕНОС! (#SPILL)

Диапазон для переноса находится внутри таблицы

Решение 1: преобразовать таблицу в диапазон данных.

Для этого выполните следующие шаги:

  1. нажмите на любую ячейку в таблице,
  2. в меню в верхней части окна выберите «Конструктор»,
  3. выберите команду «Преобразовать в диапазон».

распространенные ошибки в Excel, как исправить ошибку#ПЕРЕНОС! (#SPILL)

Обратите внимание, что расположение меню и списка команд могут отличаться в зависимости от версии.

Решение 2: переместить формулу за границы таблицы.

Диапазон для переноса содержит объединенные ячейки

Решение: разделить ячейки внутри диапазона.

как разделить ячейки внутри диапазона, Excel

Как исправить ошибку #ЗНАЧ! в Excel

Ошибка #ЗНАЧ! (#VALUE) возникает в следующих случаях:

  • что-то не так с ячейкой (ячейками), на которую ссылается формула,
  • что-то не так с самой формулой.

Иногда найти источник проблемы не просто. Ниже — о самых распространенных случаях и как и их исправить.

Математическая формула ссылается на текст

Формулы с математическими операторами могут вычислять только числа. Если одна или несколько ячеек, на которые ссылается формула, содержит текст, формула будет возвращать ошибку.

Решение: использовать вместо формулы (уравнения, составленного пользователем) функцию (формулу, заранее заданную Excel). Функции по умолчанию игнорируют большую часть текстовых значений и производят расчеты лишь с числами.

Например, на примере ниже функция =СУММ(B2,B11) будет игнорировать текст в ячейке B11.

Как исправить ошибку #ЗНАЧ! в Excel

Скриншот: Zapier.com

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

Одна или более ячеек содержат пробелы

В этих случаях ячейка выглядит пустой.

Решение: найти и заменить пробелы. Вот как это сделать:

  1. выделите диапазон ячеек, к которому обращается формула;
  2. нажмите на иконку с биноклем, нажмите «Найти и выделить»;
  3. в окне «Найти и заменить» выберите «Заменить»;
  4. в поле «Найти» вставьте пробелы;
  5. поле «Заменить на» оставьте пустым;
  6. нажмите «Заменить все».

Как исправить ошибку #ПУСТО! в Excel

Ошибка #ПУСТО! (#REF) возникает, когда формулы ссылается на ячейку, которая уже не существует. Разберем наиболее распространенные причины возникновения ошибки и как их исправить.

Ячейка, на которую ссылается формула, удалена

Формула использует прямые ссылки на ячейки (каждая ячейка отделена запятой), но одна или несколько ячеек удалены. Это основная причина, почему Excel не рекомендует использовать прямые ссылки на ячейки.

Решение 1: Если ячейки удалены случайно, отмените это действие.

Решение 2: Обновите формулу, чтобы она ссылалась на диапазон ячеек. В этом случае Excel сможет произвести вычисления, даже если одна из ячеек была удалена.

Формула содержит относительные ссылки

Относительная ссылка означает, что используемые данные привязаны к ячейке, в которую вставлена формула. Например, если формулу =СУММ(B2:E2) скопировать из ячейки G2 в G3, Excel предположит, что должен суммировать все ячейки из колонок B-E в ряду 3.

Относительные и абсолютные ссылки в Excel

Каждый раз, когда формула с относительными ссылками переносится в другую ячейку, ссылки автоматически меняются. И если установить связь невозможно, происходит ошибка.

Например, если формулу =СУММ(G2:G7) перенести в ячейку I4, Excel предположит, что пользователю требуется сложить шесть ячеек над клеткой I4. В данном случае это невозможно, так как доступны лишь три ячейки.

Решение: обновите формулу, чтобы включить в нее абсолютные значения. Это позволит созранить исходные ссылки, даже если формула будет перенесена. Для этого вставьте символ $ перед каждой буквой, обозначающей столбец, и номером ряда.

Например, формула =СУММ(G2:G7) с абсолютными ссылками будет выглядеть как: =СУММ($G$2:$G$7).

Как исправить ошибку #ИМЯ? в Excel

Ошибка #ИМЯ? (#NAME) возникает, если название формулы неверно написано. Рассмотрим основные решения проблемы.

Название формулы содержит опечатку

Решение: обновить название формулы. Лучший способ избегать опечаток — использовать встроенный редактор формул Excel. Когда пользователь начинает печатать название формулы, программа автоматически предложит список названий, содержащих те же буквы.

Неверное название формулы

Иногда пользователи вводят название несуществующей формулы или формулы, которая называется иначе (например, ПЛЮС вместо реальной функции СУММ). В этом случае формула вернет ошибку #ИМЯ?.

Решение: найти правильное имя формулы и обновить ее.

Вот как это сделать:

  1. выберите в меню раздел «Формулы»;
  2. нажмите на «Вставить функцию» в левой части панели инструментов, в открывшемся окне «Вставка функции» просмотрите недавно использовавшиеся функции или полный список всех доступных функций;
  3. выберите и вставьте нужную функцию;
  4. в редакторе формул обновите ячейки, к которым будет отсылаться формула (поля зависят от выбранной функции).

Эти советы применимы и к ошибкам в Google Таблицах (за исключением #ПЕРЕНОС!, которая часто отображается как #REF).

Источник.

Фото на обложке: Aihr.com

Подписывайтесь на наш Telegram-канал, чтобы быть в курсе последних новостей и событий!

Понравилась статья? Поделить с друзьями:
  • Excel поиск решения на максимум
  • Excel поиск решения метод поиска
  • Excel поиск решения как на английском
  • Excel поиск решения для целых
  • Excel поиск решения для решения транспортной задачи