Desventajas de buscar valores no válidos en un cuadro de texto

Desventajas de buscar valores no válidos en un cuadro de texto

Estoy creando un formulario de usuario donde quiero realizar un análisis de regresión a partir de los datos de entrada para cuatro funciones fi(x), que están registradas en cada uno de los cuadros de texto correspondientes.

imagen1

Para comprobar si las funciones de entrada son válidas he propuesto dos condicionales, el primero para verificar que ninguno de los cuadros de texto esté vacío (esto funciona):

If p = 1 Then
    box = MsgBox("No functions were provided for regression analysis.", vbInformation, "Regression Toolbox Info")
    Exit Sub
End If

mientras que en el segundo quiero verificar que si alguno de los valores ingresados ​​no es válido, al no ser función de x, me informará, por ejemplo si se ingresa texto o algún otro dígito que no permita realizar los cálculos. hacerse.

For i = 2 To p
    If (fxn(i - 1) = "x") Then
    ElseIf IsError(Evaluate(Replace(fxn(i - 1), "x", 2))) Then
        box = MsgBox("The f" & i - 1 & "(x) input is invalid as it is not a function of x." & _
        "Check your data input and correctness of syntaxis of f(x) functions." & _
        vbNewLine & vbNewLine & "If you want to type in only x you should type in ""1*x""." & _
        vbNewLine & vbNewLine & _
        "Several functions with multiplication of x (e.g. fx1 = 1*x, fx2 = 2*x)" & _
        "are not allowed.", vbCritical, "Error!")
        Exit Sub
    ElseIf InStr(fxn(i - 1), "x") = 0 Then
        box = MsgBox("The f" & i - 1 & "(x) input is invalid as it is not a function of x", vbCritical, "Error!")
        Exit Sub
    End If
Next i

Respecto a esto último, el código que tengo hasta el momento registra falla, ya que a pesar de ingresar funciones válidas en cada uno de los textbox, me da el mensaje de que es un input no válido, es decir toma cualquier valor. como entrada no válida. He probado varias modificaciones de las líneas, pero me sigue saliendo el mismo error, ¿dónde puedo estar cometiendo el error que no me permite llegar al resultado que busco?

Muchas gracias por su valiosa cooperación.

pdt: En el siguiente enlaceLibro de trabajo, puedes encontrar el Libro de trabajo con el código en el que estoy trabajando. Si se omiten las líneas relacionadas con la verificación, el código completo funciona perfectamente, sin embargo, faltaría la verificación de los datos ingresados ​​en cada uno de los cuadros de texto, para poder verificar si son entradas válidas o no.

información relacionada