Excluir várias colunas com macro simples [fechada]

1

Preciso pegar os dados de voo TSPI e remover aproximadamente 30 a 40 colunas, cada registro contém aproximadamente 3600 linhas por hora. Depois de retirado, preciso reorganizar as colunas que sobraram. Eu gostaria de fazer isso da maneira mais fácil e rápida, se houver. Não sei como postar um exemplo dos dados do Excel nesses fóruns.

Eu tentei esse código, mas recebo o erro de tempo de execução 9

Sub sbVBS_To_Delete_Specific_Columns () Sheets ("Sheet1"). Range ("A: B, H: L, P: Q, S: BJ"). WholeColumn.Delete End Sub

Nm eu descobri que a folha foi nomeada 20-12-2016, então tive que mudar a folha1 para 20-12-2016.

Christopher Rogers
fonte
Bem-vindo ao superusuário. Os novos membros geralmente confundem isso com um site de serviço onde faremos o trabalho. É uma comunidade de perguntas e respostas onde perguntas específicas são feitas depois que você tenta algo e fica preso. Adicione detalhes do que você tentou até agora, incluindo scripts, código ou fórmulas, e tentaremos ajudar. Você pode usar Formatar texto como tabela para formatar seu exemplo para postar aqui. Se precisar de mais informações sobre como fazer perguntas, consulte Como fazer uma pergunta na Central de Ajuda .
precisa
11
Não está claro desde a última frase que você adicionou se isso se refere apenas à mensagem de erro em sua fórmula, mas você ainda tem uma tarefa com a qual precisa de ajuda ou que resolveu seu problema e não precisa mais da ajuda de pessoas aqui. Você pode esclarecer? Obrigado.
fixer1234

Respostas:

1

Ordenar

É possível classificar colunas, não apenas linhas, de dados. Supondo que você tenha algum tipo de cabeçalho na linha 1 que possa ser usado como uma chave de classificação, faça o seguinte:

1 Pressione Ctrl + End para ir para a última linha e coluna usadas

2 Pressione Shift + Ctrl + Home para selecionar tudo entre a primeira célula e a última célula usada

3 Vá para Dados | Classificar para abrir a interface de classificação

4 Clique em Opções na parte superior da interface de classificação

5 Em Orientação, selecione Classificar da esquerda para a direita e clique em OK

Agora você terá a opção de qual linha classificar. Selecione uma linha que contenha algum valor que você deseja classificar e clique em OK. As colunas em branco serão classificadas até o final e poderão ser ignoradas.

Excluir à medida que avança

Isso é mais para referência futura, mas pode ser melhor selecionar colunas inteiras e excluí-las, em vez de excluir apenas seu conteúdo. Para fazer isso:

1 Clique na letra do cabeçalho da coluna na parte superior para selecionar a coluna inteira

2 Clique com o botão direito do mouse na letra do cabeçalho da coluna e escolha Excluir ou vá para a guia Página inicial | Grupo de células | Excluir | Excluir colunas da planilha

Editado para adicionar:

Macro it

Como foi apontado, você solicitou uma macro no título da pergunta. Embora os métodos que descrevi possam ser automatizados com uma macro gravada, aqui está uma rápida escrita que removerá qualquer coluna completamente vazia do intervalo usado.

Sub ClearEmpties()
    'Delete any entirely empty column in the workshee's used range

    Dim l As Long

    For l = ActiveSheet.UsedRange.Columns.Count To 1 Step -1
        If WorksheetFunction.CountA(Columns(l)) = 0 Then
            ActiveSheet.Columns(l).EntireColumn.Delete
        End If
    Next l

End Sub

Isso percorre todas as colunas do intervalo usado, verifica se há células não vazias na coluna e, se não houver, exclui a coluna inteira. Espero que ajude.

Werrf
fonte
Esta é certamente uma boa maneira de fazê-lo. Mas, considerando o título " Excluir várias colunas com uma macro simples ", acredito que o OP estava procurando algo mais automatizado.
precisa
Bom ponto, perdi isso no título do OP - sem a tag Excel VBA eu estava procurando uma solução não macro. Vou editar para adicionar.
WRRF