Estou tentando alterar o valor de uma célula no Planilhas Google com base no valor de uma célula adjacente. Essa célula adjacente obtém seu valor da cor da célula adjacente a ela usando a fórmula desta resposta do Quora. Portanto, o valor da célula deve mudar com base no código hexadecimal obtido da cor da primeira célula. Existem quatro valores hexadecimais possíveis no momento, então eu estava tentando colocar quatro instruções IF diferentes na mesma célula, então seu valor é alterado com base nisso.
Minha primeira tentativa levou a um erro de análise de fórmula:
=if((J2="#00ff00","Read"), if(j2="#ff0000", "Unread"), if(j2="#ff9900","In Progress"), if(j2="#000000", "Not Applicable"))
É claro que você não pode simplesmente separar as declarações if com vírgulas. Com base nesta questão de estouro de pilha, tentei este código, com instruções IF aninhadas:
=if((J2="#00ff00","Read", if(j2="#ff0000", "Unread", if(j2="#ff9900","In Progress",if(j2="#000000", "Not Applicable")))))
Isso também leva a um erro de análise de fórmula.
Existe alguma maneira de simplesmente incluir várias instruções IF na mesma célula que funcionarão para o meu código?
fonte
Respostas:
Use em
lookup
vez deif
:Observe que o segundo parâmetro deve ser uma lista classificada.
fonte
ifs
?Resposta curta
O problema nos exemplos fornecidos são os parênteses. Aplique-os corretamente.
Explicação
IF()
A função deve ter dois parâmetros e, opcionalmente, um terceiro.O problema específico com
IF()
possui muitos parâmetros.logical_expression
o exteriorIF()
não retornaTRUE
ouFALSE
No Planilhas Google, os parâmetros das funções são separados por vírgulas (ou ponto-e-vírgula, se sua planilha usa vírgula como separador decimal). Quando parênteses são usados para incluir várias operações e funções dentro de uma função, eles são considerados como um parâmetro da função que os contém.
Uma prática comum é colocar o interior
IF()
como ovalue_if_false
, mas isso pode ser feito de várias maneiras. AdicionandoIF()
dentro de outro outro comovalue_if_true
evalue_if_false
é chamadoIF() logical test nesting
ou apenasIF() nesting
.Abaixo está um exemplo de uma fórmula que possui três
IF()
, dois deles usados para determinarvalue_if_false
o paiIF()
. Um alinhamento vertical e multilinha do estilo entre parênteses é aplicado para facilitar a leituraO estilo acima pode ser usado na redação de fórmulas do Planilhas Google. Eu achei útil para depuração de fórmulas.
Referência
fonte
Acabei de descobrir como combinar se e ou.
Exemplo:
Então, para o seu exemplo:
Fonte: Uso combinado de funções lógicas IF, AND ou OR na planilha do Google Doc .
fonte
Você pode aninhar instruções IF, por exemplo
Podia funcionar
OU
você poderia usar um IFAND aninhado, por exemplo
Também funcionaria.
fonte
Foi-lhe oferecida teoria e melhores abordagens, mas para responder especificamente:
tente por favor:
Ou seja, sua segunda tentativa sem o primeiro parêntese de abertura e sem o último parêntese de fechamento.
fonte