Encontre valores exclusivos dentro do grupo de correspondências parciais

0

Estou tentando identificar instâncias exclusivas de uma condição de correspondência que inclui correspondências parciais.

HOSTABC
HOSTABC
HOSTABC.domain.com
HOSTABC.domain.com

Estou tentando contar instâncias exclusivas de uma condição de correspondência. Eu tenho uma fórmula que faz isso enquanto as células são uma correspondência exata:

=(countif($F$2:$F2,$F2$”*”)=1)+0

Esta fórmula deixa um "1" para a primeira ocorrência da partida e um "0" para todas as outras instâncias da partida. Meu problema é que, no meu exemplo, row1 e 2 são ambos uma correspondência exata entre si, e uma correspondência parcial com as linhas 3 e 4.

Minha fórmula atual retorna resultados como este:

HOSTABC             1
HOSTABC             0
HOSTABC.domain.com  1
HOSTABC.domain.com  0

Gostaria de ver row1 com 1 e todas as outras linhas neste exemplo com um 0 Alguma idéia?

    
por John Kenny 20.04.2016 / 13:23

2 respostas

0

Tente usar uma coluna auxiliar C por exemplo e escreva nela essa fórmula =IFERROR(LEFT(A1,FIND(".",A1,1)-1),A1)

A é o seu nome de host e na coluna D escreve o seguinte:

=IF(COUNTIF($A$1:A1,"="&C1&"*")=1,1,0)

Arraste as duas fórmulas para baixo e você verá row1 com 1 e todas as outras linhas neste exemplo com 0

    
por 20.04.2016 / 23:14
0

Talvez você possa tentar reformular de forma que a fórmula teste se algum de seus componentes aparecer nas células anteriores.

Por exemplo, supondo que todas as suas entradas com itens adicionais estejam sempre separadas por pontos (.) e tenham 3 itens (HOSTABC.domain.com) como no caso acima, algo nas seguintes linhas pode funcionar:

=IF(OR(COUNTIF($F$1:$F1,"="&$F2&"*")>0,COUNTIF($F$1:$F1,"="&LEFT($F2,FIND(".",$F2)-1)&"*")>0,COUNTIF($F$1:$F1,"="&MID($F2,FIND(".",$F2)+1,FIND(".",$F2,FIND(".",$F2)+1)-FIND(".",$F2)-1)&"*")>0,COUNTIF($F$1:$F1,"="&RIGHT($F2,LEN($F2)-FIND(".",$F2,FIND(".",$F2)+1))&"*")>0),0,1)

EDITAR:

Para sua pergunta de acompanhamento, ref. a validade, algo ao longo das seguintes linhas pode funcionar:

=IF(OR(COUNTIF(F:F,"="&$F2&"*")>1,COUNTIF(F:F,"="&LEFT($F2,FIND(".",$F2)-1)&"*")>1),"Valid","")

Além disso, eu entendo pela resposta da SuperSam que você precisa apenas do nome do host (por exemplo, HOSTABC). A resposta acima está apenas verificando isso. Além disso, se esse for o caso, você pode simplificar minha primeira fórmula sugerida da seguinte forma:

=IF(OR(COUNTIF($F$1:$F1,"="&$F2&"*")>0,COUNTIF($F$1:$F1,"="&LEFT($F2,FIND(".",$F2)-1)&"*")>0),0,1)
    
por 20.04.2016 / 14:23