Determine os primeiros e últimos registros de qualificação para cada data no Excel

0

Eu preciso encontrar o primeiro e o último de cada dia único (coluna A) que se qualifica (coluna B).

Na coluna C, preciso escrever "primeiro" ou "último".

A     B    C
date  use  result
-----------------
1-1   yes  last
2-1   no
2-1   yes  first
2-1   no
2-1   yes
2-1   yes  last
2-1   no  
3-1   no
3-1   yes  first

As datas são classificadas. Se apenas um único registro de data se qualifica (como 1-1 ou 3-1 neste exemplo), ele pode ser rotulado como "primeiro" ou "último", o que for mais simples para a abordagem adotada; a escolha da etiqueta não é importante nessa situação (embora seja necessário um rótulo para o registro qualificativo, como no caso de 3-1).

Sugestões para uma abordagem?

    
por Wivku 15.02.2016 / 20:54

1 resposta

2

Aqui está uma fórmula para calcular: =IF(B2="yes",IF(COUNTIFS($A$1:A1,A2,$B$1:B1,"yes")=0,"first",IF(COUNTIFS(A3:$A$10000,A2,B3:$B$10000,"yes")=0,"last","")),"")

Parece complicado, mas é muito simples o que você explicou:

  • se a coluna B da linha contiver "sim",
    • verifica se a linha real é a primeira do mesmo dia com "sim"
      • se sim, então dá "primeiro" (se um dia tiver apenas uma linha qualificada, será o primeiro)
      • else verifica se a linha real é a última do mesmo dia com "sim"
        • se sim, então, "last"
        • se não, então deixe a célula em branco
    • else (se a coluna B for "não") deixa a célula em branco

A fórmula atualmente funciona apenas até 10.000 linhas, se você tiver mais, simplesmente aumente os números nela.

    
por 16.02.2016 / 09:45