
Eu tentei tantas permutações diferentes de várias fórmulas para tentar fazer isso funcionar que nem sei por onde começar, então vou começar do início. Aqui está uma imagem de um cenário completamente hipotético para simplificar para todos o que estou tentando fazer.
Basicamente, o que estou tentando fazer é obter todos os códigos em uma coluna para ler "AZUL", "VERDE" ou "MARROM". O cenário é assim. Alguém pede que você crie um campo chamado “BIO DATA 1”, que serve para confirmar que a cor dos olhos de um funcionário foi identificada/registrada. Inicialmente apenas uma caixa marcada foi adicionada ao campo para indicar que os dados sobre a cor dos olhos haviam sido coletados.
Mais tarde, você foi solicitado a voltar e recodificar a caixa marcada com “AZUL”, se os olhos do funcionário fossem azuis. Mais tarde, você é informado de que seria mais significativo se os rótulos fossem mais descritivos e solicitado a voltar e atribuir rótulos também para quem tem olhos castanhos e olhos verdes.
Antecipando que alguém poderia querer que aqueles com olhos verdes também fossem codificados, você criou anteriormente uma coluna separada para aqueles com olhos verdes, mas não para olhos castanhos. Além disso, você não utilizou um identificador exclusivo para a coluna denominada "VERDE"; você simplesmente continuou com a marcação da caixa marcada.
O que você quer fazer agora é o seguinte: tudo em uma coluna e usando uma fórmula, crie uma coluna que rotule cada cor de olho. Você deseja usar uma fórmula que possa usar em D2 e então, com um clique duplo na mira, basta copiar essa fórmula para baixo.
Geralmente alguém sempre começa com: "Que fórmulas você já experimentou?" Então, vou expor um pouco do que acho que posso ter usado:
=SE(EXATO(C2, B2), "VERDE", "MARROM") OU SE(B2="AZUL"), "AZUL")
=SE(EXATO(C2, B2), "VERDE") OU SE((B2="AZUL", "AZUL")), "MARROM"
=SE(C2=B2), "VERDE", "MARROM") OU SE(B2="AZUL"), "AZUL")
=SE(C2=B2), "VERDE", "MARROM") OU SE(B2="AZUL"), "AZUL")
=SE(E((ÉERRO(MATCH(C2, B2, 0) & SE(B2<>"AZUL"), "MARROM") OU SE(C2=B2, "VERDE", "AZUL")
Esses são apenas alguns. Cada um me informa que tenho um erro na minha fórmula. Tentei ainda mais do que você vê acima, mas não me lembro quais eram, até o pressionamento de tecla, e não sei se ajudariam alguém. Eles são principalmente remendados a partir de respostas que outros me deram para outros problemas e fórmulas que vi em várias páginas da web. Verdade seja dita, inicialmente pensei que teria descoberto uma fórmula que funcionaria muito antes disso, então não me preocupei em acompanhar minhas tentativas ao longo do caminho.
Claramente estou faltando alguma coisa. O que estou fazendo de errado? Mais importante ainda, qual é a maneira mais fácil e eficiente de resolver este problema?
Só para constar, eu poderia resolver esse problema manipulando colunas usando classificação, copiando e colando, ou usando uma fórmula para parte da coluna e outra fórmula para o resto, mas eu realmente quero aprender como fazer isso usando apenas uma fórmula. A capacidade de fazer isso pode ser útil algum dia. O que você recomenda?
Caso seja importante, preciso de uma fórmula/solução que funcione para o Excel 2007.
Responder1
Agora percebo que estava tornando meu problema muito mais complicado do que precisava ser... às vezes, muita informação pode trazer retornos decrescentes. Com todas as soluções realmente maravilhosas para problemas que recebi aqui no superdo utilizador, demorei um pouco para perceber que tudo que eu precisava fazer para que isso funcionasse era usar esta fórmula aqui:
=SE(B2="AZUL", "AZUL", SE(B2<>C2, "MARROM", SE(B2=C2, "VERDE", "")))
E é isso. É simples assim. Se feito corretamente, deverá ficar parecido com isto quando você terminar:
Se precisar de mais ajuda com fórmulas dessa natureza, confira os links a seguir. Eles me ajudaram a montar a fórmula que usei para esse problema.
Como usar instruções IF aninhadas no Excel com AND, OR, NOT
A combinação If(AND) produz o erro “Você inseriu muitos argumentos para esta função”