Por favor, necesito ayuda con la función hipervínculo

23/10/2007 - 00:17 por Sergio | Informe spam
Tengo un archivo con muchas hojas.
En una consulta en el foro vi que se puede hacer un listado con el nombre de
cada una de las hojas y hacer un hipervínculo para llegar directamente a la
hoja necesaria.
Tengo las hojas y tengo una de ellas (la primera) con el listado de todas
las hojas del archivo.
Necesito ayuda con la función, no se cómo usarla, lo he intentado pero no me
resulta.
Gracias, a quién pueda ayudarme.

Preguntas similare

Leer las respuestas

#1 Héctor Miguel
23/10/2007 - 00:47 | Informe spam
hola, Sergio !

Mostrar la cita
prueba con la siguiente alternativa: -> http://tinyurl.com/2mg83u

saludos,
hector.
#2 Cacho
23/10/2007 - 06:36 | Informe spam
Incorpora el siguiente código en un módulo:

Sub GeneraListaDeHojas()
Dim Celda As Range, ii As Integer
On Error Resume Next
Set Celda = Application.InputBox("Seleccione la celda a partir de la
cual" & _
Chr$(13) & "se elaborará el índice.", Type:=8)
If Celda Is Nothing Then Exit Sub
On Error GoTo 0
Range(Celda.Offset(1, 0), Celda.Offset(400, 0)).Delete xlShiftUp
For Each Hoja In Sheets
If Hoja.Name <> ActiveSheet.Name Then
Celda.Offset(ii, 0) = Hoja.Name
ActiveSheet.Hyperlinks.Add Anchor:=Celda.Offset(ii, 0), _
Address:="", SubAddress:="'" & Celda.Offset(ii, 0) & "'!
A1"
ii = ii + 1
End If
Next Hoja

ActiveWorkbook.Names.Add Name:="ListaDeHojas", RefersTo:=Celda
Set Celda = Nothing
End Sub


Con la primer hoja seleccionada y al ejecutarlo (cuando sea necesario,
claro), te generará un listo completo con los nombres de las hojas del
archivo y su correspondiente hipervínculo.

Quizá no necesite decírtelo, pero ubicado ya en cualquiera de esas
hojas, cuando requieras volver a esta primer hoja, solo selecciona en
el "cuadro de nombres" (generalmente, a la izquierda de la barra de
fórmulas) el nombre "ListaDeHojas".

Saludos y quedo a tu disposición.
#3 Héctor Miguel
23/10/2007 - 07:32 | Informe spam
hola, chicos !

si vamos a "asumir" el llenado de ~400 hojas en otras tantas ~400 filas (y su necesario "scrolleo")
con la consiguiente necesidad de eliminar y volver a rellenar cuando se agreguen/eliminen n_hoja/s
(creo que) saldria mas barata alguna de las siguientes alternativas:

op1: podrias evitar el uso de codigo si pulsas con el boto secundario del puntero
-> sobre las flechas en la parte inferior izquierda de las barras de desplazamiento

op2: podrias minimizar el uso de codigo y aligerar la carga y llenado de combos/listas/rangos/... con algo +/- como:
en un modulo de codigo normal ==Sub CambiarHoja()
With Application.CommandBars("workbook tabs").Controls(16)
If Right(.Caption, 3) = "..." Then .Execute Else .Parent.ShowPopup
End With
End Sub

-> macro a la que podrias asignarle un atajo de teclado

(son solo propuestas adicionales)
saludos,
hector.

__ la propuesta original __
Mostrar la cita
Ads by Google
Search Busqueda sugerida