Visual Basic para Aplicaciones - crear un rango discontinuo cuyo tamaño dependa de una variable

Life is soft - evento anual de software empresarial
 
Vista:

crear un rango discontinuo cuyo tamaño dependa de una variable

Publicado por joaessol (1 intervención) el 17/06/2021 20:58:23
Hola,

Tengo un problema al formular un problema de optimizacion con solver.
Creo que el problema viene con la definición del rango “mychange”, que es el rango discontinuo que depende de la variable c y el rango de celdas de variables a iterar en solver.
El obtener la primera solución me sale mensaje de “Error en el modelo. Compruebe que todas las celdas y restricciones son válidas. Es posible que algunas celdas que no son celdas de variables estén marcadas como Integer, Binary o Alldifferent”.
El código es el siguiente:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
Sub Prueba_coef_7a21()
Dim c As Integer
Dim con As Integer
Dim fran As Integer
Dim i As Integer
Dim j As Integer
Dim Mychange As Range
 
fran = Cells(9, 3).Value
con = Cells(10, 3).Value
 
j = 1
For j = 1 To fran
i = 1
For i = 1 To 18
c = 1
Set Mychange = (Cells(85 + i - 1, 2 + j))
For c = 1 To (con - 1)
Set Mychange = Union(Mychange, Cells(85 + i - 1 + (28 * c), 2 + j))
Next c
 
    SolverReset
    SolverOk SetCell:="Cells(54+i-1,2+j)", MaxMinVal:=1, ValueOf:=0,    ByChange:=Mychange.Address, Engine:=1, EngineDesc:="GRG Nonlinear"
    SolverAdd CellRef:="Cells(85 + i - 1 + (28 * (c + 1)), 2 + j)", Relation:=2, FormulaText:="1"
     SolverSolve
 
Next i
Next j
End Sub

Gracias por la ayuda. He buscado en 1000 foros pero no encuentro la solución.
Saludos
Joaessol
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder