Me gustaría programar una función personalizada en Excel para calcular la función estandarizada de pérdida, esto es:
Aunque Excel no calcule integrales esto se puede expresar en base a las funciones de distribución y de densidad de la normal, haciendo:
(donde fi minúscula es la función de densidad, y fi mayúscula la de distribución)
Dentro de una hoja de cálculo esto se puede hacer facilmente escribiendo la fórmula:
- Código:
-
=NORM.S.DIST(Z1;0)-Z1*(1-NORM.S.DIST(Z1;1))
Donde Z1 se sustituye por la referencia a la celda en que se encuentre el valor z del que queremos calcular la función de pérdida.
Pero lo que me gustaría hacer es guardar la función de modo que pueda acceder a ella escribiendo simplemente =FSTP(Z1), cosa que he intentado hacer con el VBE escribiendo el código:
- Código:
-
Function FSTP(z)
FSTP = Application.NORM.S.DIST(z, 0) - z * (1 - Application.NORM.S.DIST(z, 1))
End Function
Pero en este caso la celda me devuelve un error #VALUE!
¿Veis dónde está el problema?