Ver Mensaje Individual
  #2 (permalink)  
Antiguo 24/01/2007, 03:59
Avatar de 3pies
3pies
Colaborador
 
Fecha de Ingreso: diciembre-2003
Ubicación: Desde una destilería
Mensajes: 2.584
Antigüedad: 20 años, 4 meses
Puntos: 144
Re: Hacer Referencia a otra Hoja desde VB?

Se puede hacer de 2 formas:

Si entras en modo VBA (Alt + F11), arriba a la izquierda verás que dentro de la carpeta Microsoft Excel Objetos, te aparecen las hojas de cálculo que tienes. Esas hojas de cálculo o pestañas, tienen 2 nombres que pueden coincidir o no: uno es el que hay fuera del paréntesis y otro el que hay dentro. Por ejemplo, podrías tener esto:
Código:
Hoja1 (Hoja1)
O bien esto:
Código:
Hoja1 (FACTURA)
Si te fijas, lo que hay fuera del paréntesis es el nombre interno de las hojas de cálculo que tiene el libro, y lo que hay entre paréntesis es el nombre que le da el usuario a esas hojas de cálculo.

Bueno, pues dicho eso, te puedes referir a las hojas de cálculo, ya sea por su nombre interno, o por el nombre que le has dado.

Método 1:
Código:
Sub ejemplo_1()
'Nos referimos a la hoja, por su nombre interno, es decir,
'por el nombre que hay fuera del paréntesis
If Hoja2.Range("A1") = 1 Then Range("A1") = "En la hoja 2, hay un 1 en A1"
end sub
Método 2:
Código:
Sub ejemplo_2()
'Nos referimos a la hoja, por el nombre que le hemos dado (aunque puede que no
'se lo hayamos cambiado, pero será también el nombre "visible" de la hoja),
'es decir, por el nombre que hay dentro del paréntesis
If Sheets("FACTURA").Range("A2") = 2 Then Range("A2") = "En la hoja 2, hay un 2 en A2"
End Sub
Salu2