Note: The other languages of the website are Google-translated. Back to English
Log in  \/ 
x
or
x
Inscreva-se  \/ 
x

or

Como excluir a folha se o nome da folha não estiver em uma lista?

Digamos que eu tenho uma planilha que contém uma lista de nomes de planilhas dentro da planilha na coluna A, conforme a captura de tela mostrada abaixo, e alguns nomes de planilhas na planilha não estão na lista, agora, eu quero excluir as planilhas que não estão na lista da coluna A. Como eu poderia resolver essa tarefa no Excel de forma rápida e fácil?

doc deletar folha não está na lista 1

Exclua as planilhas que não estão em uma lista específica com o código VBA


seta azul bolha direita Exclua as planilhas que não estão em uma lista específica com o código VBA

Normalmente, você pode verificar os nomes das folhas um por um e excluir aqueles que não estão na lista de nomes das folhas. Mas, aqui, posso falar sobre um código VBA para lidar com isso. Faça o seguinte:

1. Vá para a planilha que contém a lista de nomes de planilhas e, em seguida, mantenha pressionada a ALT + F11 chaves para abrir o Microsoft Visual Basic para Aplicações janela.

2. Então clique inserção > Móduloe cole o seguinte código no Módulo Janela.

Código VBA: Excluir planilhas que não estão em uma lista

Sub Deletenotinlist()
'Updateby Extendoffice
    Dim i As Long
    Dim cnt As Long
    Dim xWb, actWs As Worksheet
    Set actWs = ThisWorkbook.ActiveSheet
    cnt = 0
    Application.DisplayAlerts = False
    For i = Sheets.Count To 1 Step -1
        If Not ThisWorkbook.Sheets(i) Is actWs Then
            xWb = Application.Match(Sheets(i).Name, actWs.Range("A2:A6"), 0)
            If IsError(xWb) Then
                ThisWorkbook.Sheets(i).Delete
                cnt = cnt + 1
            End If
        End If
    Next
    Application.DisplayAlerts = True
    If cnt = 0 Then
        MsgBox "Not find the sheets to be seleted", vbInformation, "Kutools for Excel"
    Else
        MsgBox "Have deleted" & cnt & "worksheets"
    End If
End Sub

Importante: No código acima, A2: A6 é a referência da célula que contém os nomes das planilhas, você pode alterá-la conforme sua necessidade.

3. E, em seguida, pressione F5 para executar este código, as planilhas que não estão na lista foram excluídas de uma vez, veja a captura de tela:

doc deletar folha não está na lista 2


As melhores ferramentas de produtividade para escritório

O Kutools for Excel resolve a maioria dos seus problemas e aumenta sua produtividade em 80%

  • armadilha para peixes: Insira rapidamente fórmulas complexas, gráficos e qualquer coisa que você tenha usado antes; Criptografar células com senha; Criar lista de discussão e enviar emails ...
  • Super Formula Bar (edite facilmente várias linhas de texto e fórmula); Layout de leitura (ler e editar facilmente um grande número de células); Colar na faixa filtrada...
  • Mesclar células / linhas / colunas sem perder dados; Dividir o conteúdo das células; Combinar linhas / colunas duplicadas... Evite células duplicadas; Comparar intervalos...
  • Selecione Duplicado ou Único Linhas; Selecione linhas em branco (todas as células estão vazias); Super Find e Fuzzy Find em muitos livros; Seleção aleatória ...
  • Cópia exata Várias células sem alterar a referência da fórmula; Criação automática de referências para várias folhas; Inserir marcadores, Caixas de seleção e mais ...
  • Extrair Texto, Adicionar texto, remover por posição, Remover Espaço; Criar e imprimir subtotais de paginação; Converter entre conteúdo de células e comentários...
  • Super Filtro (salvar e aplicar esquemas de filtro a outras planilhas); Classificação Avançada por mês / semana / dia, frequência e mais; Filtro Especial por negrito, itálico ...
  • Combine pastas de trabalho e planilhas; Mesclar tabelas com base em colunas-chave; Divida os dados em várias folhas; Conversão em lote de xls, xlsx e PDF...
  • Mais de 300 recursos poderosos. Suporta Office / Excel 2007-2019 e 365. Suporta todos os idiomas. Fácil implantação em sua empresa ou organização. Teste gratuito de 30 dias com recursos completos. Garantia de devolução do dinheiro em 60 dias.
guia kte 201905

Guia do Office traz interface com guias para o Office e torna seu trabalho muito mais fácil

  • Habilite a edição e leitura com guias em Word, Excel, PowerPoint, Publisher, Access, Visio e Project.
  • Abra e crie vários documentos em novas guias da mesma janela, em vez de em novas janelas.
  • Aumenta sua produtividade em 50% e reduz centenas de cliques do mouse para você todos os dias!
officetab bottom
Say something here...
symbols left.
You are guest
or post as a guest, but your post won't be published automatically.
Loading comment... The comment will be refreshed after 00:00.
  • To post as a guest, your comment is unpublished.
    G C · 7 months ago
    How could this be changed so if the sheet name contains the text in the list it does not delete them rather than if it matches.
  • To post as a guest, your comment is unpublished.
    AJ · 3 years ago
    Hi,


    My list of sheet names are numbers only and this code still deletes all the sheets names which are just number i.e I have sheets named "1", "2" and "3" and my list is 1 and 3 only, instead of deleting sheet "2" it deletes all numbered sheet. If the sheet name has any letters then the code works fine. Can someone help?!