Página 1 de 1

Macro pra excluir abas ocultas de lista de abas

Enviado: 02 Ago 2018 às 15:59
por Kayteas
Pessoal,

Tenho uma macro rodando que lista todas as abas da minha planilha (são muitas), porém, algumas dessas abas nao precisariam entrar na lista, pois sao abas de controle apenas, e nao abas de clientes (foco da planilha). Tem alguma forma desta macro listar somente as abas nao ocultas?
Código: Selecionar todos
Sub ListaPlans()
'
' ListaPlans Macro
'

' Atalho do teclado: Ctrl+Shift+I
'

Dim ws As Worksheet, linha As Integer
Application.ScreenUpdating = False

'Recupera a ultima linha
linha = Sheets("Relatorio").Range("P1").Value

For Each ws In ThisWorkbook.Worksheets
    If ws.Name <> "Relatorio" Then
        If ws.Name <> "Template" Then
        
        Sheets("Relatorio").Range("A" & linha).Value = ws.Name
        Sheets("Relatorio").Hyperlinks.Add Anchor:=Range("A" & linha), _
        Address:="", SubAddress:="'" & ws.Name & "'!A1", TextToDisplay:=ws.Name
        
        linha = linha + 1
                
    End If
        End If
    
Next ws

'Salva a ultima linha
Sheets("Relatorio").Range("P1").Value = linha


Application.ScreenUpdating = True
End Sub

Re: Macro pra excluir abas ocultas de lista de abas

Enviado: 02 Ago 2018 às 17:31
por osvaldomp
Experimente:
Código: Selecionar todos
Sub ListaPlansVisíveis()
 Dim ws As Worksheet
 For Each ws In ThisWorkbook.Worksheets
  If ws.Name <> "Relatorio" And ws.Name <> "Template" And ws.Visible Then
    Sheets("Relatorio").Cells(Rows.Count, 1).End(3)(2) = ws.Name
    Sheets("Relatorio").Hyperlinks.Add Anchor:=Cells(Rows.Count, 1).End(3), _
        Address:="", SubAddress:="'" & ws.Name & "'!A1", TextToDisplay:=ws.Name
  End If
 Next
End Sub

Re: Macro pra excluir abas ocultas de lista de abas

Enviado: 02 Ago 2018 às 18:58
por Kayteas
Maravilha! Era exatamente isso! Muito obrigada Oswaldo!! :D