Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Макрос - аналог инструмента "Поиск решения" - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Макрос - аналог инструмента "Поиск решения"
cerber412 Дата: Вторник, 12.06.2018, 16:46 | Сообщение № 1
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 131
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Всем привет. Подскажите - как решить задачу при помощи макроса.

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

Тут нюанс - нельзя подключать вообще никаких надстроек навроде Solver Add-in
К сообщению приложен файл: primer1.xls (26.5 Kb)
 
Ответить
СообщениеВсем привет. Подскажите - как решить задачу при помощи макроса.

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

Тут нюанс - нельзя подключать вообще никаких надстроек навроде Solver Add-in

Автор - cerber412
Дата добавления - 12.06.2018 в 16:46
StoTisteg Дата: Вторник, 12.06.2018, 16:53 | Сообщение № 2
Группа: Авторы
Ранг: Старожил
Сообщений: 1161
Репутация: 103 ±
Замечаний: 0% ±

Excel 2010
cerber412, а что мешает взять да и записать тот же поиск решения макрорекордером и использовать полученный код?


Интуитивно понятный код - это когда интуитивно понятно, что это код.
 
Ответить
Сообщениеcerber412, а что мешает взять да и записать тот же поиск решения макрорекордером и использовать полученный код?

Автор - StoTisteg
Дата добавления - 12.06.2018 в 16:53
cerber412 Дата: Вторник, 12.06.2018, 17:00 | Сообщение № 3
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 131
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
StoTisteg, нет - для этого нужно подключать надстройку (Solver Add-in кажется).
А делать этого нельзя - я же написал.
Поэтому я и задаю вопрос о том как это сделать макросом.
 
Ответить
СообщениеStoTisteg, нет - для этого нужно подключать надстройку (Solver Add-in кажется).
А делать этого нельзя - я же написал.
Поэтому я и задаю вопрос о том как это сделать макросом.

Автор - cerber412
Дата добавления - 12.06.2018 в 17:00
RAN Дата: Вторник, 12.06.2018, 18:39 | Сообщение № 4
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
cerber412, элементарно! Напишите на VBA аналог надстройки Solver.


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщениеcerber412, элементарно! Напишите на VBA аналог надстройки Solver.

Автор - RAN
Дата добавления - 12.06.2018 в 18:39
nilem Дата: Вторник, 12.06.2018, 19:15 | Сообщение № 5
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
cerber412, привет
Имеется в виду, что сумма премий известна. Надо только подобрать коэф-нт. Так?


Яндекс.Деньги 4100159601573
 
Ответить
Сообщениеcerber412, привет
Имеется в виду, что сумма премий известна. Надо только подобрать коэф-нт. Так?

Автор - nilem
Дата добавления - 12.06.2018 в 19:15
cerber412 Дата: Вторник, 12.06.2018, 20:03 | Сообщение № 6
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 131
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
Имеется в виду, что сумма премий известна. Надо только подобрать коэф-нт. Так?


Да
 
Ответить
Сообщение
Имеется в виду, что сумма премий известна. Надо только подобрать коэф-нт. Так?


Да

Автор - cerber412
Дата добавления - 12.06.2018 в 20:03
nilem Дата: Среда, 13.06.2018, 06:39 | Сообщение № 7
Группа: Авторы
Ранг: Старожил
Сообщений: 1613
Репутация: 563 ±
Замечаний: 0% ±

Excel 2013, 2016
Как-то вот так:
[vba]
Код
Sub ttt()
Dim smOkl#, smPrem#, kf#
smPrem = Application.InputBox("Введите сумму премий", , 1000, , , , , 2)
If smPrem = 0 Then Exit Sub
With Range("B2", Cells(Rows.Count, 2).End(xlUp))
    smOkl = WorksheetFunction.Sum(.Value)
    kf = smPrem / smOkl
    .Offset(, 1).FormulaR1C1 = "=R2C5*RC[-1]"
End With
Range("E2").Value = kf
End Sub
[/vba]


Яндекс.Деньги 4100159601573
 
Ответить
СообщениеКак-то вот так:
[vba]
Код
Sub ttt()
Dim smOkl#, smPrem#, kf#
smPrem = Application.InputBox("Введите сумму премий", , 1000, , , , , 2)
If smPrem = 0 Then Exit Sub
With Range("B2", Cells(Rows.Count, 2).End(xlUp))
    smOkl = WorksheetFunction.Sum(.Value)
    kf = smPrem / smOkl
    .Offset(, 1).FormulaR1C1 = "=R2C5*RC[-1]"
End With
Range("E2").Value = kf
End Sub
[/vba]

Автор - nilem
Дата добавления - 13.06.2018 в 06:39
cerber412 Дата: Среда, 13.06.2018, 10:08 | Сообщение № 8
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 131
Репутация: 0 ±
Замечаний: 0% ±

Excel 2013
nilem, ясно. Спасибо.
 
Ответить
Сообщениеnilem, ясно. Спасибо.

Автор - cerber412
Дата добавления - 13.06.2018 в 10:08
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!