Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Chico Rodrigues

RESOLVIDO Como filtrar uma coluna com itens repetido baseado em 3 outras colunas?

Recommended Posts

Tenho um problema aqui, veja se pode me ajudar.
minha tabela possui 4 principais colunas;
Col1 = Serial
Col2 = Status
Col3 = Desc
Col4 = Data
onde quando a coluna 1 possuir dados repetidos estes devem ser unicos, assim posteriormente então tenho que analisar a coluna 2 que pode conter Fail ou Pass, 
quando existir 2 fails devo descartar o mais velho por data Col4.
quando existir 1 fail e 1 pass devo descartar o fail.
quando existir 2 pass devo então analisar a coluna 3 que pode conter Null ou Rework, e devo descartar então o Null.
pode existir outras combinações como 3 ou mais Pass, onde devo analisar a coluna 3 e manter o que for Rework e depois analisar por data Col4 mantendo então apenas o ultimo Rework. O resultado fica assim: Col1:1234  Col2:Pass  Col3: Rework  Col4: Ultima data.

Editado por Chico Rodrigues

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Chico Rodrigues,

 

por favor, pode preencher uma planilha com algumas linhas seguindo essas condições?

 

Com ela será mais fácil criar uma capa para consultar o último movimento positivo do serial 1234.

 

Obrigado.

Editado por minoso

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Chico Rodrigues

 

Usei a fórmula abaixo para cada campo que quero visualizar. Vou tentar explicar a lógica de cada componente dela, vamos nos falando.

 

Fórmula:

=PROCV(CONCATENAR($B$17;"-";CONT.SE($B$2:$B$13;$B$17));$A$1:$G$13;COL();0)

 

Depuração da fórmula:

CONT.SE($B$2:$B$13;$B$17) = estou descobrindo quantos registros o serial na célula B17 possui na tabela

CONCATENAR($B$17;"-";CONT.SE($B$2:$B$13;$B$17)) = estou concatenando o valor da B17 (o serial procurado) com o número contado na linha (azul) acima). Ou seja, se o serial ABC possuir 4 registros, essa linha vai retornar ABC-4

PROCV = então pegamos a condição ABC-4 produzida pela fórmula acima e fazemos um PROCV simples na tabela original para puxar cada campo

COL() = retorna o número da coluna em que a célula está sendo formulada. Por exemplo, se inserir essa fórmula na coluna A, ela retorna 1, na coluna B, 2... e por aí vai. Isso foi utilizado para otimizar a fórmula do PROCV em seu 3º atributo, índice da coluna, você pode tanto deixar essa fórmula como inserir os números das colunas manualmente.

 

Para ela funcionar, criei uma coluna depois e uma antes da sua tabela. Sendo:

 

Coluna J: Conta via fórmula quantos registros o serial específico tem na tabela (é importante que os registros sejam sempre organizados por SERIAL para ela funcionar, ou seja, com a exata disposição que você me passou na tabela original

 

Nova coluna A: é a concatenação da coluna B com a coluna J, formando um indicador de qual é o registro do serial que estamos buscando. Por exemplo, se o serial 1234 tem 4 registros, ele vai criar na coluna A o seguinte resultado

1234-1

1234-2

1234-3

1234-4

 

Assumindo então que todo último registro é o que vence todas as condições que você listou no primeiro post desse tópico, capturamos então, via PROCV, essa linha com base na concatenação acima.

 

A ideía é deixar a coluna A e J oculta.

 

No anexo tem a aplicação disso tudo. 

 

Essa é uma das soluções, um outro jeito mais complexo e completo (anti-usuário) seria através de Macro, mas para a necessidade atual acredito que essa forma lhe atenda.

 

Espero que ajude!

regra.xlsx

Editado por minoso
  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@Chico Rodrigues

 

É importante que quando for adaptar a fórmula para a planilha em que realmente ela fará uso, você precisa saber que as referências estão trancadas e que a fórmula, exatamente como postei, pode deixar de funcionar se inserida em um layout novo. Novamente, tanto a explicação quanto o anexo que postei são para lhe auxiliar com a lógica do processo e o que usar para fazer acontecer.

 

De qualquer forma, se depois de você tentar não funcionar, posta o arquivo que lhe ajudo a adaptar a fórmula para o novo layout.

 

Boa sorte!

Compartilhar este post


Link para o post
Compartilhar em outros sites

@minoso,

Muito obrigado pela atenção.

 

* a data vence somente quando são iguais os fails ou tenho 3 pass por exemplo .

Col B: 123 Col C:PASS Col D: Null 

Col B: 123 Col C:PASS Col D: Rework

Col B: 123 Col C:PASS Col D: Rework

 

 

mais uma vez muito obrigado, me ajudou muito.

 

Chico

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exatamente @Chico Rodrigues, a fórmula toda passa a funcionar se, e somente se, a ordem de registro do serial estiver inserida em ordem. Logo a lógica entenderá que o último registro do serial 123 será a linha que você quer retornar.

 

Se o post que eu fiz ajudou, não deixe de curtir e marcar como 'melhor resposta', isso me ajuda no fórum ;)

 

Se precisar de algo mais, só criar o tópico! Estou de olho :D

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

@minoso

 

Otimo, me ajudou de mais, e somente algumas alteraçoes para o novo layout e tudo estará funcionando muito bem.

 

pode deixar que vou curtir e marcar.

 

Chico

Editado por Chico Rodrigues

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário






Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia 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

×