У меня есть требование использовать Solver с определенным набором данных, и хотя я знаю, как использовать Solver с одним набором данных, есть несколько других рядов данных, для которых мне нужно его использовать, и затем он становится повторяющимся по мере необходимости. Солвер использует только абсолютные ссылки.

Есть ли выход? Можно ли как-то применить одни и те же критерии только к разным строкам и заставить Солвер пересчитать результат для всех этих строк?

Кто-то сказал, что использование INDIRECT может быть вариантом, но я не получил никакого объяснения того, как.

1 ответ1

0

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

Я рекомендую просмотреть этот пост, обсуждая проблемы с использованием Solver в VBA.

Чтобы использовать ссылки для настройки Солвера (например, SetCell:=), я обнаружил, что это работает, в то время как большинство других методов этого не делают.

Set SetRng = Sheets("Sheet2").Range("A1")
SetAddress = Split(SetRng.Address(external:=True), "[")(0) & Split(SetRng.Address(external:=True), "]")(1)
SolverOK SetCell:=SetAddress

Где SetAddress - Dim'd в виде строки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .