Por que não consigo aninhar SUBSTITUTE em uma instrução IF?

Por que não consigo aninhar SUBSTITUTE em uma instrução IF?

Não consigo descobrir o que há de errado com esta fórmula:

=IF((SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3)<Sheet2!$B$6))

essencialmente (SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3)retorna o valor da letra da coluna atual, por exemplo, 'B'. O 3 no final retorna o número da linha. Então, no total, B3.

Esta é uma data que é um tipo de data curta. Em seguida, é comparado com outra data, que também é do tipo data curta.

Esta fórmula não funciona. Ao alterar a fórmula para:

=IF((SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3)<Sheet2!$B$6),true,false)

ele retorna falso independentemente de a condição if ser atendida ou não.

Qualquer ajuda seria muito apreciada.

Responder1

Você precisa de um "indireto". Você está comparando um endereço de string com um valor de célula.

Quando você avalia a fórmula, basicamente obtém isto -

insira a descrição da imagem aqui

Qual avaliado dá a você isso -

insira a descrição da imagem aqui

If(string<value, true, false)

Você poderia tentar uma indireta -

=IF((INDIRECT(SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1",3))<Sheet2!$B$6),1)

Ele irá comparar o valor da célula com a outra célula -

insira a descrição da imagem aqui

Responder2

Sem ver para que serve o texto que você está usando Substitute, tente um destes:

=IF((SUBSTITUTE(ADDRESS(1,COLUMN(),4),"1","3")<Sheet2!$B$6),true,false)

=IF((SUBSTITUTE(ADDRESS(1,COLUMN(),4),1,3)<Sheet2!$B$6),true,false)

Pode estar sendo rude porque você está procurando uma string e substituindo por um número. Caso contrário, você pode postar o texto que está usando para substituir?

informação relacionada