ScriptControl en vb6

Saludos, por favor estoy trabajando en vb6 con el control ScriptControl cuando ejecuto esto var2 = IIf((Now() - CDate("13/08/2011") > 360) And (varA = 1), ((varA + varB + varC) / 12), 0) directo sale el valor correcto pero cuando lo introduzco esa sentencia en resultado asi: resultado = formula.Eval(resultado) me sale un mensaje q dice "No coinciden los tipos Iff" error Nº 13. Por favor si alguien me pued dar una mano gracias anticipadas

1 Respuesta

Respuesta
-1
No indicas de que tipo tienes definido la variable resultado, deberia der integer, sin embargo verifica que .Eval que tipo d edato devuelve, si devueleve un objet debes hacer una conversion al tipo correcto de la variable que estya a izquierda del =
Gracias, le explico, lo que deseo es que mediante una formula almacenada en un campo de la base de datos, se realice un calculo, ya otras formulas sencillas las ha calculado correctamente, es decir, que la variable resultado esta correcta (tipo string y al final hago una conversion), el problema es que cuando asigno la fórmula:
IIf((Now() - CDate("13/08/2011") > 360) And (varA = 1), ((varA + varB + varC) / 12), 0)
en la variable resultado y al final
resultado = formula.Eval(resultado)
Me genera un mensaje q dice "No coinciden los tipos Iff" error Nº 13.
El error 13 es que estas almacenando un dato texto en una variable numerica pro ejemplo
Debes verificar que tipo de valor devuelve la formula para realizar al conversion correcta a la variable a la izquierda del =
Muchas gracias por su interés en prestarme su ayuda.
Con respecto a lo que me indica si conozco el Error 13 o eror de tipo, y disculpe q le diga se que ud es el experto pero dudo mucho que sea por asignación o conversion de variables, ya que el error que me presenta es error 13 pero lo que dice es NO COINCIDEN LOS TIPOS IFF, lo que según yo pienso es porque tengo algun error dentro de la fórmula pero no lo veo.
Ya que si fuera error del tipo de variable o la conversión no me ejecutaria ninguna de las otras formulas.
Entonces cambia la logica, no uses iif y coloca eso en dos variables
Ud como lo haria??
Yo Utilizaria un IF no un IIF

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas