Error en macro, repite hojas al hacer un bucle
Tengo el siguiente Macro que se activa cada vez que activo la Hoja Precios
Intento que liste todas las hojas con el nombre VELA_algo, que serian los productos (para que no me liste todas las hojas del libro que tienen otra información)
Que las ordene por alfabeto, que mantenga las fórmulas que genera esa lista en las columnas siguientes y que agregue o elimine productos de la lista (bucle) si se crean o eliminan,.
Funcionaba perfecto hasta que lo empecé a probar y me va repitiendo la ultima fila (ultimo producto) hasta que toda la lista es ESE producto. No entiendo que pasa
Private Sub Worksheet_Activate()
If ActiveSheet.Name = "Precios" Then
Incorporar_Hipervínculos
End If
End Sub
Sub Incorporar_Hipervínculos()
ActiveSheet.Unprotect
Dim w As Worksheet, sHoja As String
For Each w In ThisWorkbook.Worksheets
' Verificar si el nombre de la hoja contiene la palabra "VELA"
If InStr(1, w.Name, "VELA", vbTextCompare) > 0 Then
' Verificar si la hoja existe antes de realizar operaciones en ella
On Error Resume Next
Dim testSheet As Worksheet
Set testSheet = ThisWorkbook.Worksheets(w.Name)
On Error GoTo 0
If Not testSheet Is Nothing Then ' La hoja existe
Dim fill As Long
fill = 2 ' Reiniciar la variable fill en cada iteración
sHoja = w.Name
Cells(fill, 2).FormulaR1C1 = sHoja
ActiveSheet.Hyperlinks.Add Anchor:=Cells(fill, 2), Address:="", _
SubAddress:=sHoja & "!A1", TextToDisplay:=sHoja
fill = fill + 1
End If
End If
Next w
Columns("B:j").Select
Selection.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlGuess, _
OrderCustom:=1, MatchCase:=False, Orientation:=xlTopToBottom, _
DataOption1:=xlSortNormal
ActiveSheet.Protect DrawingObjects:=True, Contents:=True, Scenarios:=True
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
End Sub