funciones definidas por el usuario que involucren funciones de exc

15/12/2007 - 04:08 por juan | Informe spam
hola, tengo un problema yo quiero hacer la siguiente funcion en un modulo de
vba

Function lo(x, y)
lo = Min(x + y, x + 2)

End Function
el tema es que me tira error, y hasta ahora nunca habia creado funciones
que invulucren funciones definidas por excel, desde ya muchas garcias,
saludos juan

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
15/12/2007 - 04:39 | Informe spam
hola, juan !

... tengo un problema yo quiero hacer la siguiente funcion en un modulo de vba
Function lo(x, y)
lo = Min(x + y, x + 2)
End Function
el tema es que me tira error
y hasta ahora nunca habia creado funciones que invulucren funciones definidas por excel...



puedes usar (al menos) dos metodos para llamar a funciones "integradas" de excel desde vba:

1) Application.WorksheetFunction.<la_funcion_en_ingles>(los parametros de la funccion)
a) si necesitas que vba "administre" -posibles- valores de error que pudieran causar las funciones,
-> omite la parte de "WorksheetFunction" y usa solamente: Application.<la_funcion_en_ingles>(etc.
b) toma en cuenta que no todas las funciones integradas de excel estan en la coleccion "WorksheetFunciton"
c) tampoco se puede evaluar (desde vba) una funcion con "arreglo matricial" (en excel: ctrl+shift+enter)
para todo lo que no este previsto en este metodo, debes utilizar el siguiente...

2) Evaluate("texto usando las funciones en ingles")

(creo que) lo anterior te podria servir (al menos) como "punto de partida"
(a reserva de que se te hubieran quedado "ciertos" detalles "en el tintero") -?-

si cualquier duda (o informacion adicional)... comentas ?
saludos,
hector.
Respuesta Responder a este mensaje
#2 juan
15/12/2007 - 05:22 | Informe spam
hector: desde ya te agardezco por tu ayuda, para serte sincero soy un
principiante en esto, yo estoy haciendo la sintaxis de esta forma

Function lo(x, y)
lo = Application.wooksheetfunction.Min(x + 2, y)
End Function

obviamente mi sale error..., como seria la correcta sintaxis, gracias de nuevo

juan
Respuesta Responder a este mensaje
#3 juan
15/12/2007 - 05:43 | Informe spam
hector:, ya pude solucionar el problema, te agradezco por tu tiempo y tu
respuesta, saludos
juan
Respuesta Responder a este mensaje
#4 Héctor Miguel
15/12/2007 - 05:53 | Informe spam
hola, juan !

... ya pude solucionar el problema ...



(segun yo) solo tenias que cambiar la parte media de la llamada a la funcion:
de: -> wooksheetfunction
a: -> worksheetfunction

(le sobra una "o" y le falta una "r") :))

saludos,
hector.
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida