Use AGGREGATE, ele pesquisará o intervalo e retornará um número baseado na coluna na qual o valor foi encontrado para a função CHOOSE ():
=CHOOSE(AGGREGATE(15,6,(COLUMN($I$2:$L$16)-COLUMN($I$2)+1)/($I$2:$L$16=C3),1),"T1","T2","T3","T4")
Eu quero que uma célula exiba automaticamente um texto (T1, T2, T3, T4) com base em se a entrada em outra célula é encontrada ou não em uma tabela.
=IF(SUMPRODUCT(--(C3=standards!I3:I16))>0,"T1")
listará apenas uma categoria, mas não consigo usar a fórmula para aceitar várias matrizes E entradas específicas quando o valor estiver nessa categoria.
=IF(SUMPRODUCT(--(C3=standards!I3:I16))>0,"T1")*(--(C3=standards!J3:j16))>0,"T2")
O que estou fazendo errado?
Use AGGREGATE, ele pesquisará o intervalo e retornará um número baseado na coluna na qual o valor foi encontrado para a função CHOOSE ():
=CHOOSE(AGGREGATE(15,6,(COLUMN($I$2:$L$16)-COLUMN($I$2)+1)/($I$2:$L$16=C3),1),"T1","T2","T3","T4")
Vocêpodeusarestafórmula:
=IF(SUMPRODUCT(--(B253=A254:A257))>0,"T1",IF(SUMPRODUCT(--(B253=B254:B257))>0,"T2",IF(SUMPRODUCT(--(B253=C254:C257))>0,"T3",IF(SUMPRODUCT(--(B253=D254:D257))>0,"T4"))))
Notas:
AGGREGATE()
a fórmula retornará um erro #Num!
, mas essa fórmula fornecerá FALSE
. Esta fórmula SUMPRODUCT()
fornece o número da coluna (de sua tabela de dados) em que o valor de C3 está:
=SUMPRODUCT(1*(C3=standards!I3:L16)*COLUMN(A:D))
e você pode usar isso em uma fórmula CHOOSE()
, como na resposta de Scott, ou em INDEX()
se seus textos forem longos ou precisarem ser alterados.
=CHOOSE(SUMPRODUCT(1*(C3=standards!I3:L16)*COLUMN(A:D)),"T1","T2","T3","T4")
=INDEX(Text_Table,SUMPRODUCT(1*(C3=standards!I3:L16)*COLUMN(A:D)))
Observe que a fórmula SUMPRODUCT()
dará a resposta errada se houver várias ocorrências do valor C3 em sua tabela de dados. Existem maneiras de contornar isso, então, por favor, comente se pode haver vários valores.
As outras respostas identificarão a primeira ocorrência, mas fornecerão o texto correto para a coluna em que ela está.
Tags microsoft-excel