Listar hojas de un libro en hoja Indice excepto "Luz, Agua"

Tengo la siguiente macro que copia a la hoja Indice el nombre de las hojas del documento en la columna A. Lo que me gustaría es que no ponga en la lista las hojas llamadas "Agua, Luz e Indice" ni tampoco realiza el hipervínculo.

Sub Indice()
'Declaramos variables
Dim WS As Worksheet
Dim A As Integer
A = 1
'Borramos la información de la columna A
Sheets("Indice").Range("A:A").Clear
'Creamos un Hipervinculo por cada Hoja del libro
For Each WS In Worksheets
Sheets("Indice").Cells(A, 1).Select
ActiveSheet.Hyperlinks.Add _
Anchor:=Selection, Address:="", SubAddress:= _
WS.Name & "!A1", TextToDisplay:=WS.Name
A = A + 1
Next WS
End Sub

1 respuesta

Respuesta
2

Te paso la macro actualizada:

En la línea LCase("Indice"), LCase("Agua"), LCase("Luz"), pon los nombres de las hojas que no quieres incluir.

Sub Crear_Indice()
'Por Dante Amor
  'Declaramos variables
  Dim sh1 As Worksheet, sh2 As Worksheet
  Dim i As Long
  '
  Set sh1 = Sheets("Indice")
  i = 1
  'Borramos la información de la columna A
  sh1.Range("A:A").Clear
  'Creamos un Hipervinculo por cada Hoja del libro
  For Each sh2 In Sheets
    Select Case LCase(sh2.Name)
      Case LCase("Indice"), LCase("Agua"), LCase("Luz")    'nombre de las hojas a exlcuir
      Case Else
        sh1.Hyperlinks.Add Anchor:=sh1.Range("A" & i), Address:="", _
          SubAddress:="'" & sh2.Name & "'!A1", TextToDisplay:=sh2.Name
        i = i + 1
    End Select
  Next
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas