Eu tenho uma tabela grande (20-30 colunas, 10-15 mil linhas). O que preciso fazer é encontrar o número de linhas que correspondem de forma idêntica em um (ou dois) campo(s) específico(s), mas não em outro campo específico (o restante dos campos é irrelevante). Além disso, gostaria de poder usar a formatação condicional para destacar essas linhas. Isso é possível sem script?
Tabela de exemplo com 10 linhas e 4 colunas:
2.558658418 106.47 STSGGTAALGCLVK P01857
2.558658418 106.47 STSGGTAALGCLVK P01860 <--
2.4505791896 106.4 LYHSEAFTVNFGDTEEAK P01009
1.3850997023 106.34 EQADFAIEALAK P35579
1.3850997023 106.34 EQADFALEALAK Q7Z406
0.6654422739 105.36 RFDEILEASDGIMVAR P14618-2
2.0767656337 105.26 STSESTAALGCLVK P01859
2.0767656337 105.26 STSESTAALGCLVK P01859
2.0767656337 105.26 STSESTAALGCLVK P01861 <--
2.0767656337 105.26 STSESTAALGCLVK P01861
O que eu gostaria neste cenário é que a contagem fosse 8 e, se possível, que as linhas que marquei com setas (para dar um exemplo) fossem destacadas. Observe que se o terceiro e o quarto campos forem idênticos (ou seja, se a diferença entre as linhas estiver em outro lugar da tabela), énãouma linha de interesse.
Normalmente não trabalho com Excel/OOCalc, então me sinto um pouco deslocado trabalhando com essas tabelas. Me deparei com alguns tutoriais/fórunsum dos quaiscontém a sugestão de usar COUNTIFS
(por exemplo =COUNTIFS(C2:C114, "YES", F2:F114, "> 0")
) ou o equivalente OOCalc com SUMPRODUCT
(por exemplo=SUMPRODUCT(C2:C114="YES" ; F2:F114>0)
O problema com essa abordagem é que ela combina o conteúdo da célula com um valor predefinido como "YES"
. No meu caso, gostaria de comparar o conteúdo da célula com o conteúdo da célula imediatamente acima/abaixo. É possível ajustar as fórmulas acima para se adequarem ao meu caso?
Responder1
Uma maneira de marcar as duplicatas (parece que é isso que você está procurando) é colocar isso na célula E1 e depois copiá-lo.
=COUNTIF(C$1:C1;C1)
ou
=COUNTIF(C$1:C1,C1)
*dependendo das configurações do seu país
O que isso faz é colocar 1 para cada item único ou primeiro e um número de contador para todos os itens subsequentes. Você poderia "avançar" isso com:
=IF(COUNTIF(C$1:C1;C1)>1;"<--";"")
ou
=IF(COUNTIF(C$1:C1,C1)>1,"<--","")
A fórmula é então:
=IF(COUNTIF(C$1:C1;C1)>1;IF(COUNTIF(D$1:D1;D1)=1;"<--";"");"")
Ah, aliás, no seu exemplo, você mostra 3 setas, mas os dados entre a célula C4 e a célula C5 são diferentes! Portanto, minha fórmula mostra apenas 2 setas.
Formatação automática
Se quiser formatar automaticamente cada linha marcada, formate a célula A1 com o seguinte:
Selecione: Fórmula
Digite: IF($E1="<--")
Crie um novo esquema de cores (por exemplo, MyYellow) e defina o plano de fundo para esse esquema.
Agora use format painter
para escolher o formato da célula A1 e cole-o sobre A1 a D8.