Referencia externa en funcion personalizada

23/12/2004 - 17:56 por Juan Sánchez | Informe spam
Hola grupo. Una consulta.
En una función personalizada que la tengo como complemento, tengo un
argumento de tipo Range. Funciona perfecto si le envio una referencia del
mismo libro donde escribo la fórmula, pero si la referencia es externa me
devuelve un error de valor (#VALOR!) , cuando el libro al que hago
referencia está cerrado; algo parecido a lo que sucedía en la función
SUMAR.SI en Office 97 antes del SR-1.

¿Alguna idea de como solucionar esto?

Slds,
Juan.

P.D. Si no alcanzo a ingresar nuevamente al grupo más tarde, para todos una
felices fiestas y nos vemos el lunes.
 

Leer las respuestas

#1 KL
23/12/2004 - 20:28 | Informe spam
Juan,

Creo q lo q describes es normal y no tiene nada q ver con el problema de
SUMAR.SI en Office 97 (ya me corregiran si me equivoco). Las funciones
nativas de Excel (tales como SUMAR.SI) son parte d la aplicacion y se cargan
cada vez q se abre la aplicacion. En cambio una funcion personalizada es un
codigo VBA almacenado dentro de un modulo VBA q como tal es parte de un
proyecto VBA q a su vez es parte integral de un fichero de Excel.

Para poder usar tal codigo es necesario q su vehiculo (el fichero) este
abierto (eso si, no tiene por q ser visible). Las opciones q se me ocurren
para poder usar un macro desde otro fichero son:

1) tener abierto el fichero *.xls q contiene el macro mientras se trabaja
con el libro q lo usa.
2) guardar el macro en el fichero personal.xls. Para ello ve al menu
Herramientas>Macro>Grabar Nuevo Macro. El dialogo "Grabar Macro" aparecera.
En el desplegable "Guardar macro en" elige la opcion "Libro personal de
macros" y pulsa "Aceptar". Ahora para la grabacion y ve al Editor de VBA. En
el explorador de proyectos podras ver el libro Personal.xls, copia tu
funcion a un modulo, digamos el Modulo1.
3) crear un add-in (*.xla) e instalarlo para q se carge cada vez q se abre
Excel.

Saludos,
KL


"Juan Sánchez" <jbsrec(a)hotmail.yasabes> wrote in message
news:
Hola grupo. Una consulta.
En una función personalizada que la tengo como complemento, tengo un
argumento de tipo Range. Funciona perfecto si le envio una referencia del
mismo libro donde escribo la fórmula, pero si la referencia es externa me
devuelve un error de valor (#VALOR!) , cuando el libro al que hago
referencia está cerrado; algo parecido a lo que sucedía en la función
SUMAR.SI en Office 97 antes del SR-1.

¿Alguna idea de como solucionar esto?

Slds,
Juan.

P.D. Si no alcanzo a ingresar nuevamente al grupo más tarde, para todos
una
felices fiestas y nos vemos el lunes.


Preguntas similares