none
Fórmula ÍNDICE RRS feed

  • Pergunta

  • Olá,

    Necessitei de uma fórmula para verificar qual o número da primeira célula em um intervalo que era diferente de zero.

    Buscando em fóruns encontrei a seguinte solução:

    =CORRESP(1;ÍNDICE(--($A$1:$A$10>0);0);0)

    Entendo claramente a função das duas fórmulas, juntas e em separado, a minha dúvida é a função desses dois traços "--" dentro da função ÍNDICE, porque quando verifico as etapas do cálculo vejo que a fórmula cria uma matriz de VERDADEIROS e FALSOS e esses dois traços transformam estes últimos em 0 e 1, e CORRESP informa qual o primeiro número da coluna que é VERDADEIRO.

    Mas qual seria exatamente a função desses "--" na fórmula, porque ocorre essa mudança de VERDADEIRO e FALSO para 0 e 1?

    Agradeço a ajuda!

    segunda-feira, 4 de agosto de 2014 12:00

Respostas

  • Post Cruzado com o Microsoft Community!

    http://answers.microsoft.com/pt-br/office/forum/office_2010-excel/f%C3%B3rmula-%C3%ADndice/ab5ab62f-4363-42c3-90cb-0cee644b0698

    Olá Rko! Você já deu parte da resposta na sua pergunta, que é justamente a função de transformar os valores booleanos em 0 ou 1. O duplo hífen faz essa conversão de uma lista de valores booleanos (verdadeiro, falso) para ZERO ou UM. Cada hífen atua como uma negação. Quando você nega algo, o Excel converte os valores subjacentes aos números e, em seguida, inverte o sinal. Ou seja, com o primeiro "-" o VERDADEIRO se tornar -1 e FALSO se tornar 0. A segunda negação inverte isso e deixa apenas números, permitindo assim a geração de uma matriz pura de 0 e 1. Outra forma de transformar valores booleanos em 1 ou 0 seria simplesmente multiplicando-os por 1, sendo que VERDADEIRO resulta em 1 e FALSO resulta em ZERO, portanto a fórmula apontada tem o mesmo efeito se digitada assim:

    =CORRESP(1;ÍNDICE(($A$1:$A$10>0)*1;0);0)



    Rafael Kamimura


    • Editado Rafael Kamimura segunda-feira, 4 de agosto de 2014 13:55
    • Sugerido como Resposta Rafael Kamimura segunda-feira, 4 de agosto de 2014 13:55
    • Marcado como Resposta rko2000 segunda-feira, 4 de agosto de 2014 15:18
    segunda-feira, 4 de agosto de 2014 13:54