none
comparação de números de 2 celulas RRS feed

  • Pergunta

  • gostaria de saber se é possível comparar números de uma célula (A1) com os números de outra célula (A2)

    e obter em uma terceira célula (A3) quantidade de números coincidentes: ex; A1( 1-2-3-4-5-)        A2( 1-3-5-)       A3(3)

    quarta-feira, 16 de abril de 2014 06:32

Todas as Respostas

  • Emerson,

    Você pode usar a função cont.se()

    que vai contar valores de acordo com uma condição.


    sábado, 19 de abril de 2014 18:44
  • Caro Emerson,

    Para responder acertadamente a sua pergunta, seria necessário mais detalhamento das condições e critérios do conteúdo que haverá em cada célula. Por exemplo, qual a quantidade de números máximo que haverá em cada célula? Qual o caractere que determinará a separação dos números (na sua pergunta é o "-")? Você quer uma fórmula para arrastar para um banco de dados ou é são dois campos específicos e únicos? Os números podem se repetir nas células e vai querer saber a quantidade de repetições?

    Eu iria postar aqui uma proposta interessante, mas como me cadastrei recentemente, a microsoft não permite que eu use imagens na resposta, por isso assim que eu tiver minha conta verificada e autorizada a postar imagens, eu posto a solução, pois sem o apoio das imagens ficará difícil explicar e você entender.

    Eu tentei pensar alguma maneira de criar uma única forma, mas pela minha linha de lógica a fórmula fica cada vez mais complexa conforme a quantidade de números que se quer comparar na célula B1. Só como curiosidade, segue uma fórmula que faz o que você quer, mas que tem algumas limitações, pois só compara 4 números delimitados entre "-" na célula B1 (na célula A1 podem ter quantos números quiser) e o texto na célula B1 não pode terminar com "-", da forma que você digitou na sua pergunta. Se sua necessidade for simples assim, essa fórmula irá te atender, copie e cole na célula C1:

    =SE(SEERRO(LOCALIZAR("-"&VALOR(ESQUERDA(B1;LOCALIZAR("-";B1;1)-1))&"-";"-"&A1&"-";1);0)>0;1;0)+SE(SEERRO(LOCALIZAR("-"&VALOR(EXT.TEXTO(B1;LOCALIZAR("-";B1;1)+1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)-LOCALIZAR("-";B1;1)-1))&"-";"-"&A1&"-";1);0)>0;1;0)+SE(SEERRO(LOCALIZAR("-"&VALOR(ESQUERDA(EXT.TEXTO(B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1)-1);LOCALIZAR("-";EXT.TEXTO(B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1)-1))-1))&"-";"-"&A1&"-";1);0)>0;1;0)+SE(SEERRO(LOCALIZAR("-"&VALOR(EXT.TEXTO(B1;LOCALIZAR("-";B1;LOCALIZAR(ESQUERDA(EXT.TEXTO(B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1)-1);LOCALIZAR("-";EXT.TEXTO(B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1)-1))-1);B1;1))+1;NÚM.CARACT(B1)-LOCALIZAR("-";B1;LOCALIZAR(ESQUERDA(EXT.TEXTO(B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1)-1);LOCALIZAR("-";EXT.TEXTO(B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;LOCALIZAR("-";B1;1)+1)+1)-1))-1);B1;1))))&"-";"-"&A1&"-";1);0)>0;1;0)

    Logo posto outra solução.

    Abraços!

    • Sugerido como Resposta Rafael Kamimura quarta-feira, 23 de abril de 2014 19:43
    quarta-feira, 23 de abril de 2014 16:27
  • Agora que liberaram para eu postar imagem, vou propor uma solução com a criação de duas tabelas auxiliares para listarmos os números que aparecem em cada célula, e então fica fácil fazer a relação entre eles.

    Na solução proposta, deixei a tabela limitada a 15 linhas, mas se a quantidade de números dentro de A1 e B1 for maior que 15 números, basta aumentar as tabelas e ajustar as fórmulas nas colunas N e O e da célula C1.

    As fórmulas estão abaixo:

    1) =CONT.SE(N3:N17;"SIM")

    2) =SE(E3=1;1;SEERRO(SE(G2+2>NÚM.CARACT($A$1);"";G2+2);""))

    3) =SE(OU(G2=NÚM.CARACT($A$1)+1;G2="");"";SEERRO(LOCALIZAR("-";$A$1;F3)-1;NÚM.CARACT($A$1)+1))

    4) =SEERRO(EXT.TEXTO($A$1;F3;G3-F3+1);"")

    5) =SE(J3=1;1;SEERRO(SE(L2+2>NÚM.CARACT($B$1);"";L2+2);""))

    6) =SE(OU(L2=NÚM.CARACT($B$1)+1;L2="");"";SEERRO(LOCALIZAR("-";$B$1;K3)-1;NÚM.CARACT($B$1)+1))

    7) =SEERRO(EXT.TEXTO($B$1;K3;L3-K3+1);"")

    8) =SE(M3="";"";SE(CONT.SE($M$2:M3;M3)>1;"REPETIDO EM B1";SE(CONT.SE($H$3:$H$17;M3)>0;"SIM";"NÃO")))

    9) =SE(M3="";"";CONT.SE($H$3:$H$17;M3))

    Desta forma atenderá a sua necessidade!

    Abraços!

    sexta-feira, 25 de abril de 2014 19:01