Прикручування solver а в vba, програмне забезпечення

Як хтось вище вже згадав, ця проблема вирішується використанням осередку в якості змінної. Зрештою, змінна - це просто контейнер певного типу. Ви так само можете під неї виділити певну комірку і, замість того щоб привласнювати значення змінної в коді, привласнювати значення осередку. Якщо у вас, скажімо, 30 кроків за часом і на кожному кроці вам незалежно потрібно оптемізіровать 10 коефіцієнтів (оптимізація дебітів свердловин, наприклад), то ви можете виділити 10 осередків для Солвер + 1 осередок для оптимизируемого значення і в коді пов'язувати ці осередки з осередками потрібного рядка таблиці, яка оптимізується. В даному випадку Солвер буде тупо міняти значення в цих осередках, а вони будуть відображатися в таблиці і відпрацьовуватися як потрібно (Лукапа, формули, і т.д.). Закінчили з одним рядком, перекинули посилання і заново повторили.

Прикручування solver а в vba, програмне забезпечення

Колеги, хочу повернутися до питання прикручування Солвер.

Необхідно викликати процедуру в процесі вирішення Solver, щоб значення в оптимізується осередку порахувати.

При виклику Solver в VBA є в опціях SolverOptions ключ StepThru. Він дозволяє в підсумку викликати макрос для обробки подій, де ніби як можна прописати свою функцію.

Є у кого досвід вирішення такого завдання?

Прикручування solver а в vba, програмне забезпечення

Михвей, добрий день!

SolverOk SetCell: = Cells (a, b), MaxMinVal: = 3, ValueOf: = 0, ByChange: = Cells (c, d), Engine: = 1, EngineDesc: = "GRG Nonlinear"

Схожі статті