Problemas Con una Macro

Solo consultas sobre macros y código VBA Excel.

Reglas del Foro
1. Antes de hacer tu pregunta intenta con el buscador de este foro (muchas preguntas ya fueron respondidas antes!)
2. Si haces una nueva pregunta, es muy recomendable que adjuntes el ejemplo Excel para poder comprenderla mejor!
3. Realiza tu pregunta de forma clara, explicando bien cada paso de lo que haces y tendrás más probabilidad de respuesta!
Compartir en:
     

Problemas Con una Macro

Notapor ascomp » 05 Jun 2006 20:00

Al tratar de obtener la información de una hoja de trabajo que no es la activa, coloco en el programa:

La macro esta en el botón de la hoja de trabajo FINAL del libro enviado.

Sheets("P.Kinder A").Select, y luego Range(cNombre).Select, para así­ poder obtener luego con Range(cNombre).Value , el valor de la celda en cuesstión, pero en el segundo paso me aparece el error 1004, del metodo Select.

Adjunto archivo para corroborar el error.

Espero me ayuden en este proceso, dado que me tiene con dolor de cabeza.

Nota: No pude enviar el archivo en formato XLS, dado que me decia que era muy grande, por eso lo comprimi.

Gracias por vuestra ayuda.
No tiene los permisos requeridos para ver los archivos adjuntos a este mensaje.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
ascomp
Miembro Frecuente
Miembro Frecuente
 
Registrado: 02 May 2006 13:23
Ubicación: Santiago de Chile

Re: Problemas Con una Macro

Notapor KL » 05 Jun 2006 20:33

Hola ascomp,

No puedo abrir tu archivo porque no tengo RAR ni quiero instalarlo. En todo caso creo que con mi bola de cristal y un poco de magia blanca podre adivinar donde esta el problema :-)

Creo que el codigo lo ejecutas desde el modulo VBA de una hoja que no es la P.Kinder A. Al usar la instruccion Range(cNombre).Value creo que esperas que Excel asuma que se trata de un rango en la hoja activa. Efectivamente esto es lo que ocurre si el rango "no calificado" (sin indicar la hoja) se referencia desde un modulo estandar, un modulo de Formulario (UserForm), el modulo del libro (ThisWorkbook), cualquier otro modulo de clase que no sea de una hoja. Cuando se usa un rango "no calificado" en el modulo de una hoja, por defecto se asume que el rango pertenece a la hoja en cuyo modulo esta el procedimiento y no a la hoja activa. De ahi que si el procedimiento no esta en el modulo de la hoja P.Kinder A y el rango cNombre si lo esta, obtendras un error por refernciar un objeto inexistente.

Prueba sustituir las tres instruciiones que usas

Sheets("P.Kinder A").Select
Range(cNombre).Select
MsgBox Range(cNombre).Value

por la siguiente:

MsgBox Sheets("P.Kinder A").Range(cNombre).Value
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
KL
Miembro Frecuente
Miembro Frecuente
 
Registrado: 18 Mar 2006 13:57
Ubicación: Madrid

Re: Problemas Con una Macro

Notapor ascomp » 06 Jun 2006 19:20

Muchas gracias KL, era justo la solución que queria, dado que modifique la acción para obtener el dato, y con la lí­nea de acción que me diste.

Muchas gracias.
* Te recomendamos estos productos Excel: Manual de Macros | Manual de Funciones | Nuevas Funciones | ddTraDa
Avatar de Usuario
ascomp
Miembro Frecuente
Miembro Frecuente
 
Registrado: 02 May 2006 13:23
Ubicación: Santiago de Chile


Compartir en:
     

  • Anuncio
Manual Excel avanzado

Volver a Macros

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 9 invitados