VBA – Uso de Goal Seek en VBA
Este tutorial le mostrará cómo utilizar Goal Seek en VBA.
Goal Seek es una herramienta de análisis de suposición Y si… disponible en Excel que le permite aplicar diferentes valores a fórmulas y comparar los resultados.
Sintaxis de Goal Seek
La función GoalSeek tiene 2 argumentos – el objetivo (la celda que quiere cambiar), y ChangingCell (la celda que necesita ser modificada). La función devuelve un Verdadero o un Falso – Verdadero si se encuentra el Objetivo, y Falso si no se encuentra el Objetivo.
Uso de Goal Seek en VBA
Considere la siguiente hoja de trabajo.
Para cambiar el reembolso requerido cada mes cambiando el plazo en meses, podemos escribir el siguiente procedimiento.
Sub IncreaseTerm()
'Buscar B6 100 cambiando B5
Range("B6").GoalSeek Goal:=100, ChangingCell:=Range("B5")
End Sub
Observa que tiene que haber una fórmula en la celda B6, y un valor en la celda B5.
Uso de GoalSeek con una Sentencia If
También puede utilizar GoalSeek con una sentencia IF para dirigir el flujo de su código.
Sub IncreaseTerm()
'hacer B6 100 cambiando B5 - y devolver un mensaje al usuario
If Range("B6").GoalSeek(Goal:=100, ChangingCell:=Range("B5")) = True Then
MsgBox "New Term was found successfully"
Else
MsgBox ("New Term was not found")
End If
End Sub