Excel - FUNCIONES VBA

 
Vista:

FUNCIONES VBA

Publicado por _frany_ (62 intervenciones) el 30/05/2007 18:36:40
Tras leer en un mensaje que constesté Juan C sobre la programacion de funciones tengo una duda.

He metido la funcion que creastes para comprobar y hasta alli todo perfecto.

ME he puesto ha realizar las mias propias , pero veo que cuando hay un error en la fucion no puedo entrar a depurar paso a paso dicha funcion.

Hay alguna forma de depurar en tiempo de ejecucion una funcion ? o tengo que hacer una Sub y depurarla hasta conseguir lo que necesito par posteriormente crear la funcion?

Muchas gracias.
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

RE:FUNCIONES VBA

Publicado por JuanC (792 intervenciones) el 31/05/2007 00:41:04
Te recomiendo depurar el código parte x parte
Si es necesario, crear varios Sub o Function para tener mayor control
y luego ensamblar las partes
Para depurar una función yo normalmente la llamo desde un Sub
antes de ir a las hojas; pero si querés depurarla partiendo desde la
hoja -para ser más realista-, ponés un punto de interrupción al comienzo
de la función y listo... al recalcular la hoja vas a aparecer en el código...

Saludos desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:FUNCIONES VBA

Publicado por _frany_ (1 intervención) el 31/05/2007 13:48:52
Bueno es precisamente por ese motivo por el cual puse este mensaje

Puse un unto de interrupcion en la funcion pero no funciona,

Excel me da un error en la formula y el codigo no se llega a ejecutar.

He probado por ejemplo con la funcion de ejemplo que tu mismo pusiste en un post de mas abajo por si el error fuese mio,

Al introducir un dato que sea erroneo en los datos de entrada , por ejemplo en vez de maracar un rango en el valor de entrada, escribo directamente un valor que no es de texto
o al menos no lo encierro entre comillas.

Esto me genera un error porque excel no lo reconoce como texto, pues bien este error me aparece marcado como #VALOR! sin llegar a ejecutar el codigo.

Yo he empezado a hacerme una funcion y se que tengo muchos errores en el codigo en si :-( y es por eso que no puedo poner una interrrupcion con F9 , no me corre el codigo si decteta un error.

La pregunta de todas formas me la has contestado, lo estoy haciendo con Sub y asignando los rangos a mano como lo he hecho en otras ocasiones, pero queria saber si es posible correr la FUCTION en el caso de que no este depurada.

Bueno no se si me he explicado bien, espero que me hayas entendido.

Muchas gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:FUNCIONES VBA

Publicado por JuanC (792 intervenciones) el 31/05/2007 14:09:36
el error #VALOR! indica que el argumento de la función no es correcto
si la función espera un rango y le pasas texto obviamente no va a funcionar
y Excel directamente no llega a ejecutar la función x eso no podés depurar
si querés depurar con ese problema cambia el argumento de la función a
tipo Variant

ej: Function Sumar(Num As Variant)
...
End Function

Saludos desde Baires, JuanC
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:FUNCIONES VBA

Publicado por frany (58 intervenciones) el 01/06/2007 13:36:00
Bueno creo que ahora si, pero de todas formas he de poner mas cuidado tambien se me las matrices fuera de indice y me da error sin activar la Function.

Pero bueno al menos voy aprendiendo bastante.

Gracias de nuevo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar