2010-12-08 23 views
6

Tengo un conjunto de funciones vba definidas por el usuario que se encuentran en un módulo excel, que luego se llaman desde una hoja de cálculo excel ... todo ha funcionado bien en este momento.llamando a la función de hoja de cálculo excel desde la celda excel

Se me ha pedido que mueva la vba del módulo a la página de códigos de la hoja de trabajo. Cuando hice esto, descubrí que no puedo llamar a ninguna de las funciones de las celdas en la hoja de trabajo ... los nombres simplemente no aparecen como existentes. ¿Hay alguna manera de llamar a las funciones de la hoja de cálculo desde una celda de Excel? Además, ¿hay algún problema al llamar a una función de hoja de cálculo desde una función definida por el usuario en otro módulo o código de hoja de cálculo?


EDIT:

que he encontrado si llamo por el sheetname.functionname, se lanza un mensaje de error que incluye "El nombre entra en conflicto con un Excel incorporados en el nombre o el nombre de otro objeto en el libro de trabajo "... donde si uso sheetname.anythingelse solo resuelve #NAME?

¿Esto significa que las funciones de hoja de cálculo de Excel no se pueden llamar desde una hoja?

Respuesta

7

No. Funciones en el objeto de hoja no se pueden llamar desde la hoja como funciones definidas por el usuario.

El objeto Hoja de cálculo está destinado a responder a eventos que ocurren en una hoja de cálculo. No puede poner allí las funciones definidas por el usuario. Las funciones definidas por el usuario deben vivir en un Módulo.

Si su función definida por el usuario vive en un módulo, no tendrá ningún problema para llamarla desde el código a otro lugar ... incluso en la hoja de trabajo "código subyacente".

Cuestiones relacionadas