Determine o primeiro e o último registro qualificado para cada data no Excel

Determine o primeiro e o último registro qualificado para cada data no Excel

Preciso encontrar o primeiro e o último dia de cada dia exclusivo (coluna A) que se qualifica (coluna B).

Na coluna CI você precisa 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 estão ordenadas. Se apenas um único registro de data for qualificado (como 1-1 ou 3-1 neste exemplo), ele poderá ser rotulado como "primeiro" ou "último", o que for mais simples para a abordagem adotada; a escolha do rótulo não é importante nessa situação (embora um rótulo seja necessário para o registro qualificativo, como no caso de 3-1).

Sugestões de abordagem?

Responder1

Aqui está uma fórmula para calculá-lo:
=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 simplesmente faz o que você explicou:

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

A fórmula atualmente funciona apenas até 10.000 linhas, se tiver mais, basta aumentar os números nela.

insira a descrição da imagem aqui

informação relacionada