Выбрать дату в календареВыбрать дату в календаре

Страницы: 1
Поиск решения на 34к строк
 
перестаньте мучить кнопку цитирования. Не для копирования она предназначена. И писать все через строку тоже не стоит [МОДЕРАТОР]

так целевая ячейка у меня не в V, а в Z. Я меняю значения в V3,4,5,6... чтобы оптимизировать значения в Z3,4,5,6...
Поиск решения в строке у меня около 5 секунд занимает. Ну 2 суток на сервере поработает и ок.
А в файле примере все сдвинулось влево по столбцам, так как я удалил лишние столбцы из расчетов. там код такой c "I" и "E" вместо "V" и "Z"

Может. подскажете все же более точный макрос. пожалуйста...?
Изменено: DonPеdro3x - 29.03.2020 23:56:18
Поиск решения на 34к строк
 
уже разные комбинации делаю) Большое спасибо!!!!
Поиск решения на 34к строк
 
Выдает ошибку сразу. Я вот чувствую прям, что очень близко!))  
Поиск решения на 34к строк
 
Цитата
Mershik написал: этот макрос у вас запускается?
Да, но дальше "постановки задачи" не идет

Цитата
Mershik написал: я не могу проверить так как у меня нет SolverOk.
https://docs.microsoft.com/ru-ru/office/vba/excel/concepts/functions/using-the-solver-vba-functions
Вот тут есть описание как включить его в VBA. Без кавычек пробовал тоже - он просто в ячейки пишет типа "$V$3", "$V$4" и т.д.
Поиск решения на 34к строк
 
Цитата
Mershik написал:
этот макрос у вас запускается?
Да, но дальше "постановки задачи" не идет
Поиск решения на 34к строк
 
Цитата
Mershik написал:
в файле не нашел макроса
Странно, он там есть, проверил. По Вашему коду сделал так, но эксель пишет бесконечно долго "постановка задачи" и все. Пока для 3-5 попробовал, но не пошло (а если v и z без ковычек делать - то он просто в ячейки пишет типа "$V$3):
Код
Sub sdsdad()
Dim i As Double
Dim v As Range, z As Range
For i = 3 To 5
Set v = Range("V" & i) 
Set z = Range("Z" & i) 
' Macros 1
    SolverOk SetCell:="z", MaxMinVal:=2, ValueOf:=0, ByChange:="v", Engine:=3 _
        , EngineDesc:="Evolutionary"
    SolverAdd CellRef:="v", Relation:=4, FormulaText:="целое"
    SolverAdd CellRef:="v", Relation:=1, FormulaText:="185"
    SolverAdd CellRef:="v", Relation:=3, FormulaText:="1"
    SolverSolve UserFinish:=True
Next i
End Sub

Изменено: DonPеdro3x - 29.03.2020 21:50:53
Поиск решения на 34к строк
 
Цитата
Ігор Гончаренко написал: ставлю на то, что без файла-примера решение может быть получено не раньше 20-го поста в теме
Убедили) Виноват, что сразу не приложил. Вот файл без лишних расчетов, только по сути вопроса.

Только файл 2 мб весит, закачал на яндекс.диск - https://yadi.sk/d/Bz6sLTX0-AAH7Q (а тут более 100 кб не хочет)
Снизить размер не могу, так как там важно все 34 тыс. строк.

Заранее еще раз спасибо)
Изменено: DonPеdro3x - 29.03.2020 23:52:13
Поиск решения на 34к строк
 
Прошу прощения, не подскажете как в этом случае?
Поиск решения на 34к строк
 
Форумчане, очень нужна ваша помощь! Заранее большое спасибо всем!

Есть вот такой макрос на поиск решения. Мне надо сделать так для строк с 3 до 34042. То есть каждый раз Z и V ячейки должны идти дальше на 1 число.
Есть ли какой-нибудь способ сделать это быстро, а не делать 34 тысячи раз контрол-с / контрол-в? Может быть код подстановки и итеративного запуска поиска решения 34 тыс. раз или что-то еще?

Код
SolverOk SetCell:="$Z$3", MaxMinVal:=2, ValueOf:=0, ByChange:="$V$3", Engine:=3 _
        , EngineDesc:="Evolutionary"
    SolverAdd CellRef:="$V$3", Relation:=4, FormulaText:="целое"
    SolverAdd CellRef:="$V$3", Relation:=1, FormulaText:="185"
    SolverAdd CellRef:="$V$3", Relation:=3, FormulaText:="1"
    SolverSolve UserFinish:=True
Вычет обратно пропорционального среднего
 
Всем добрый день!

Заранее благодарю за помощь, вопрос состоит в следующем:

Имеется набор субъектов РФ с % собираемости некоего налога в 2015 году. Допустим я говорю, что в 2016 году вырос % собираемости на 5 п.п. При этом, прогнозный коэффициент собираемости необходимо увеличивать обратно пропорционально его текущему значению в среднем по всем регионам (т.е. не просто всем регионам + 5 п.п.)

Например, мы хотим заложить гипотезу среднего роста собираемости на 5 процентных пунктов, то максимум этого прироста должен приходиться на регионы с самой низкой собираемостью, а регионы, где она выше 95% вообще не должны ее повышать дальше.

В приложении пример.
Спасибо за помощь.
Страницы: 1
Наверх