Excel решатель, используя относительные ссылки?

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

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

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

1 ответ

Во-первых, я предполагаю, что вы используете 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 в виде строки.

Другие вопросы по тегам