Ir ao conteúdo

Excel extrair e ordenar dados


Ir à solução Resolvido por deciog,

Posts recomendados

Postado

Você copia os nomes da tabela um abaixo do outro.  Salva num arquivo de texto digamos: bagunca.txt. Ai entra no prompt de comando e usa uma código mais ou menos assim:

 

for /f "Delims=" %a in ('type bagunca.txt ^|sort') do find "%a" "NomesOrdenados.txt" || >>NomesOrdenados.txt echo %av

 

Isso vai criar um arquivo chamdo NomesOrdenados.txt, ai é só copiar para o excel...

 

 

  • Curtir 1
  • Solução
Postado

@-=|zami|=- , bom dia.

 

na célula a14 usa esta formula e arraste para baixo

=se(b14="";"";máximo($a$13:a13)+1)

depois na célula b14 usa esta formula e arraste pra baixo

 

=seerro(índice($a$2:$f$11;menor(se(menor(se(cont.se($b$13:b13;$a$2:$f$11)+écél.vazia($a$2:$f$11)=0;cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1;"");1)=se(écél.vazia($a$2:$f$11);"";cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1);lin($a$2:$f$11)-mínimo(lin($a$2:$f$11))+1);1);corresp(mínimo(se(cont.se($b$13:b13;$a$2:$f$11)+écél.vazia($a$2:$f$11)>0;"";cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1));índice(se(écél.vazia($a$2:$f$11);"";cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1);menor(se(menor(se(cont.se($b$13:b13;$a$2:$f$11)+écél.vazia($a$2:$f$11)=0;cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1;"");1)=se(écél.vazia($a$2:$f$11);"";cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1);lin($a$2:$f$11)-mínimo(lin($a$2:$f$11))+1);1);;1);0);1);"")

 

confere se é destas forma que desejas
 
se foi útil clica no curtir, na mãozinha, é uma forma de agradecimento pela ajuda
 
decio
 

 

  • Curtir 1
Postado

amigos, muito obrigado pela atenção em me ajudar!

 

  Em 24/09/2021 às 20:58, Patropi disse:

@-=|zami|=-

 

Eu apliquei uma macro em VBA que transpôs para uma coluna, e em outra coluna apliquei uma fórmula com intervalo dinâmico, que colocou em ordem alfabética.

 

Confira na planilha e dê retorno.

 

[]s 

Expandir  

olá, @Patropi! na sua solução, a tabela não pode ter células vazias correto? quando eu tentei refazer a transposição, a macro utilizou a coluna à direita da coluna com a transposição inicial (coluna "Nome"). mesmo com a coluna inicial vazia isso acontece. assim a fórmula que ordenaria os nomes não encontra nada, pois está vinculada à coluna inicial e os dados estão na coluna à direita. a fórmula não exclui os valores duplicados, correto?

 

  Em 24/09/2021 às 21:11, ricardo_br disse:

Você copia os nomes da tabela um abaixo do outro.  Salva num arquivo de texto digamos: bagunca.txt. Ai entra no prompt de comando e usa uma código mais ou menos assim:

 

for /f "Delims=" %a in ('type bagunca.txt ^|sort') do find "%a" "NomesOrdenados.txt" || >>NomesOrdenados.txt echo %av

 

Isso vai criar um arquivo chamdo NomesOrdenados.txt, ai é só copiar para o excel...

Expandir  

olá, @ricardo_br! eu tenho que primeiro ordenar manualmente os nomes em uma coluna e salvá-los em outro arquivo e daí aplico o comando sugerido, certo? mas a minha ideia é tentar automatizar essa operação.

 

 

  Em 25/09/2021 às 12:12, deciog disse:

@-=|zami|=- , bom dia.

 

na célula a14 usa esta formula e arraste para baixo

=se(b14="";"";máximo($a$13:a13)+1)

depois na célula b14 usa esta formula e arraste pra baixo

 

=seerro(índice($a$2:$f$11;menor(se(menor(se(cont.se($b$13:b13;$a$2:$f$11)+écél.vazia($a$2:$f$11)=0;cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1;"");1)=se(écél.vazia($a$2:$f$11);"";cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1);lin($a$2:$f$11)-mínimo(lin($a$2:$f$11))+1);1);corresp(mínimo(se(cont.se($b$13:b13;$a$2:$f$11)+écél.vazia($a$2:$f$11)>0;"";cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1));índice(se(écél.vazia($a$2:$f$11);"";cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1);menor(se(menor(se(cont.se($b$13:b13;$a$2:$f$11)+écél.vazia($a$2:$f$11)=0;cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1;"");1)=se(écél.vazia($a$2:$f$11);"";cont.se($a$2:$f$11;"<"&$a$2:$f$11)+1);lin($a$2:$f$11)-mínimo(lin($a$2:$f$11))+1);1);;1);0);1);"")

 

confere se é destas forma que desejas
 
se foi útil clica no curtir, na mãozinha, é uma forma de agradecimento pela ajuda
 
decio
 

 

Expandir  

olá, @deciog! apliquei a sua fórmula que retornou apenas "Adão" do começo ao fim na coluna.

 

posso contar com mais um pouco da atenção de vocês para solucionar essa questão?

 

abraço!

@deciog me desculpe. copiei a fórmula e esqueci dos brackets na fórmula. ficou perfeito! 

muito obrigado!

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Mostrar mais  

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

Mostrar mais  
×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!