Links hacia las hojas de un cuaderno

09/02/2010 - 23:20 por Oscar | Informe spam
Hola amigos. Tengo un libro-plantilla con 23 hojas y muchas macro y formulas.
Para llegar con rapidez he copiado una macro que hace en la Hoja1 (A9:A33)
una lista con los nombres respectivos de las hojas, siendo cada nombre un
enlace a la respectiva hoja. Aqui esta el codigo respectivo, pero al
ejecutarlo desde un modulo me indica que tiene un error de sintasis,
exactamente en la linea:

wrsHojaActiva.HyperLinks.Add wrsHojaActiva.Cells(intFila, intColumna), _
"", SubAddress:="'" & wsHoja.Name & "'!A1", TextToDisplay:=wsHoja.Name

Podrian ayudarme a encontrar el error?

El codigo completo es
Sub Links_hojas()
Dim wrbLibro As Workbook
Dim wrsHojaActiva As Worksheet, wsHoja As Worksheet
Dim intFila, intColumna As Integer
Set wrbLibro = ActiveWorkbook
Set wrsHojaActiva = ActiveSheet
'en que fila/columna empezar la lista
intFila = 9
intColumna = 1
'el bucle repasa todas las hojas
For Each wsHoja In wrbLibro.Worksheets
'para excluir hoja de los links
If wsHoja.Name = "Hoja4" Then GoTo ProxHoja
'crear links
If wsHoja.Name <> wrsHojaActiva.Name Then

wrsHojaActiva.HyperLinks.Add wrsHojaActiva.Cells(intFila, intColumna), _
"", SubAddress:="'" & wsHoja.Name & "'!A1", TextToDisplay:=wsHoja.Name

intFila = intFila + 1
End If
ProxHoja:
Next wsHoja
End Sub


Slds
Oscar M
 

Leer las respuestas

#1 Cacho
10/02/2010 - 02:43 | Informe spam
Hola! Oscar. Dos comentarios:

1º) Abajo, a la izquierda de las etiquetas con el nombre de las hojas,
existen 4 pequeños botocitos de dirección.

Si haces clic con el botón derecho de tu ratón sobre cualquiera de esos
cuatro, obtendrás una lista de todas las hojas del libro. Además, al
seleccionar cualquiera de esos nombres, "saltarás" a la hoja respectiva.

Ésa es la razón por la que la macro que muestras no es muy interesante de
implementar (o sea: implementa "algo" que ya existe).

2º) De todos modos, te comento que no he podido reproducir tu problema: me
funciona correctamente ese código.

Por lo que te pregunto: ¿la hoja en laque se intentan colocar los nombres de
las hojas, tienes algún evento "Change" previsto?

Saludos, Cacho.



"Oscar" wrote:

Hola amigos. Tengo un libro-plantilla con 23 hojas y muchas macro y formulas.
Para llegar con rapidez he copiado una macro que hace en la Hoja1 (A9:A33)
una lista con los nombres respectivos de las hojas, siendo cada nombre un
enlace a la respectiva hoja. Aqui esta el codigo respectivo, pero al
ejecutarlo desde un modulo me indica que tiene un error de sintasis,
exactamente en la linea:

wrsHojaActiva.HyperLinks.Add wrsHojaActiva.Cells(intFila, intColumna), _
"", SubAddress:="'" & wsHoja.Name & "'!A1", TextToDisplay:=wsHoja.Name

Podrian ayudarme a encontrar el error?

El codigo completo es
Sub Links_hojas()
Dim wrbLibro As Workbook
Dim wrsHojaActiva As Worksheet, wsHoja As Worksheet
Dim intFila, intColumna As Integer
Set wrbLibro = ActiveWorkbook
Set wrsHojaActiva = ActiveSheet
'en que fila/columna empezar la lista
intFila = 9
intColumna = 1
'el bucle repasa todas las hojas
For Each wsHoja In wrbLibro.Worksheets
'para excluir hoja de los links
If wsHoja.Name = "Hoja4" Then GoTo ProxHoja
'crear links
If wsHoja.Name <> wrsHojaActiva.Name Then

wrsHojaActiva.HyperLinks.Add wrsHojaActiva.Cells(intFila, intColumna), _
"", SubAddress:="'" & wsHoja.Name & "'!A1", TextToDisplay:=wsHoja.Name

intFila = intFila + 1
End If
ProxHoja:
Next wsHoja
End Sub


Slds
Oscar M

Preguntas similares