Como posso condensar uma lista com dados ausentes em uma nova lista sem as células com dados ausentes?

0
Column A    to     Column B
0.83               0.83
0.6                0.6
#N/A               0.99
#N/A               0.93
0.99    
#N/A    
0.93    

Como posso condensar uma lista com dados ausentes em uma nova lista sem as células com dados ausentes?

    
por user197426 11.02.2013 / 19:21

4 respostas

1

Sua pergunta não foi específica sobre a frequência com que você deseja fazer isso ou quantas colunas você terá que fazer para isso. Aqui está o método rápido e sujo. Se você precisa de algo para muitas colunas, então pode ser melhor usar o vba

  1. Selecione a coluna que inclui os dados. Adicione um filtro (dados menu- > filtro).
  2. selecione o menu suspenso para a lista e desmarque a caixa de seleção do erro
  3. Selecione a primeira célula na coluna.
  4. Pressione CTRL + SHIFT + DOWN para selecionar as outras células visíveis
  5. Pressione CTRL + C para copiar
  6. Mover para uma nova planilha na pasta de trabalho (ou pressione SHIFT + F11 para criar uma nova)
  7. Pressione CTRL + V para colar os dados sem o erro

Nota: para versões anteriores do Excel, você terá que usar um "filtro personalizado" no menu suspenso do filtro (erro "não é igual a"). Você pode encontrar um rápido em aqui (veja sob o título "Auto Custom AutoFilters").

@Nixda: yikes .. Eu não percebi que você tinha dado basicamente a mesma resposta no seu comentário até eu atualizar a página depois de responder

    
por 11.02.2013 / 20:02
1

Além da solução de autofiltro da tiktok (que é certamente mais flexível), essa é outra correção "rápida e suja" que é um pouco mais curta:

  1. Selecione a coluna A ( Ctrl - Espaço )
  2. Início - > Localizar e Selecionar - > Ir para ( Ctrl - G ) - > Especial ( Alt - S )
  3. Dependendo de suas fórmulas ( Alt - F ) ou constantes ( Alt - O ), selecione opção e desmarque Erros ( Alt - E )
  4. Copiar ( Ctrl - C ) - isso selecionará cada célula que não seja um erro.
  5. Selecione o alvo (por exemplo, célula B1 ) e cole ( Ctrl - V )

Feito!

Se você não quiser uma cópia dos dados, mas apenas excluir os erros, você pode alternativamente modificar a etapa 3 para somente selecionar os erros e, em seguida, simplesmente excluí-los (( Ctrl - - )

    
por 11.02.2013 / 20:34
1

Ou com uma fórmula (ajuste suas necessidades). Comece em B1 e copie.

=IFERROR(INDEX($A$1:$A$10,SMALL(IF(ISNUMBER($A$1:$A$10),ROW($A$1:$A$10)),ROW(A1))),"")

Esta é uma fórmula de matriz e deve ser confirmada com Ctrl + Deslocamento + Enter

SeosdadosnãoestiverememA1aA10mas,digamos,H25aH34,use

=IFERROR(INDEX($H$25:$H$34,SMALL(IF(ISNUMBER($H$25:$H$34),ROW($A$1:$A$10)),ROW(A1))),"")

Observe como a fórmula ainda mostra Row ($ A $ 1: $ A $ 10). Esta parte retornará um número entre 1 e 10 para entradas válidas, e esse é o número que o INDEX precisa para obter a linha correta.

Além disso, a última Linha (A1) permanece a mesma, porque retorna números de uma para cima e será usada para encontrar o menor (1), segundo menor (2), terceiro menor (3), etc.

    
por 11.02.2013 / 21:00
1

Eu preciso esclarecer algo na resposta do @teylyn. A fórmula de matriz deve ser copiada e colada em B1 no exemplo acima (ou a primeira célula de sua localização de dados desejada para a saída da fórmula) ... então pressione C + S + E, então pegue essa célula e arraste-a para baixo o número desejado de células de saída - por exemplo, 4 no exemplo acima. Isso é um pouco confuso acima, e o próprio site de ajuda da Microsoft não ajuda nenhum usuário com isso, pois direciona os usuários para destacar células de saída para qualquer fórmula de matriz, digite sua fórmula para a primeira célula e pressione C + S + E . Eu passei algum tempo tentando descobrir isso, e isso estava deixando minha pessoa muito brava até que percebi que meu primeiro passo estava errado.

Não funcionará se você destacar, colar a fórmula, C + S + E. Ele só funcionará se você colar, C + S + E, depois arrastará a fórmula para baixo ou através de suas células de destino.

para que algo assim também funcione:

= IFERROR (ÍNDICE (A: A, PEQUENO (SE (NÚMERO (A: A), LINHA (A: A)), LINHA (A1))), "")

ou assim se seus dados estiverem na coluna D:

= IFERROR (ÍNDICE ($ D: $ D, PEQUENO (SE (NÚMERO ($ D: $ D), LINHA ($ D: $ D)), LINHA (D1))), "")

... mas a referência final "row" deve permanecer uma referência relativa, porque à medida que você arrasta as células de destino, ela preenche a fórmula com D2, D3, D4, etc.

Então, novamente, especificamente: - destaque uma célula de destino - colar nele = IFERROR (ÍNDICE (A: A, PEQUENO (SE (NÂMERO (A: A), LINHA (A: A)), LINHA (A1)))), "") - controle + shift + enter - destaque essa célula novamente - arraste a caixa de canto até o número desejado de linhas / colunas para suas células de saída

    
por 12.09.2018 / 23:08