Crie uma tabela de referência dos números e seu valor de string:
Entãovocêpodeusaraseguintefórmula:
=INDEX($F$1:$F$2,MATCH(TRUE,INDEX((ISNUMBER(SEARCH($E$1:$E$2,A1))),),0))
Eu preciso avaliar uma coluna numérica de 11 dígitos. Se os dados começarem com os primeiros 5 dígitos iguais a um valor numérico específico, então preciso retornar um valor de texto específico. Se os dados começarem com outro valor específico de 5 dígitos, preciso retornar um valor de texto diferente. Eu tenho 3 valores específicos para determinar, mas terá vários outros no futuro
A resposta de Scott Craner funciona de forma eficiente, mas desde que você pediu uma fórmula usando IF (), eu colocarei essa no anel.
Você pode fazer isso aninhando as instruções IF()
. O fluxo para IF()
é assim:
IF(
"Alguma comparação avaliada como TRUE ou FALSE," O que fazer se TRUE
", O que fazer se FALSE
")
Então, você testará sua primeira string e retornará o valor do texto se uma correspondência for encontrada. Se a correspondência não for encontrada, você executará outro IF()
para procurar o segundo. E continue essa lógica até cobrir todas as condições. Então, você vai acabar com isso:
=IF(VALUE(LEFT(C2,5))=$A$2,"Fours",IF(VALUE(LEFT(C2,5))=$A$3,"Threes",IF(VALUE(LEFT(C2,5))=$A$4,"Twos","No match")))
Aquiestáumaversãomaislegívelquetornaalógicamaisaparente.
=IF(VALUE(LEFT(C2,5))=$A$2,"Fours",
IF(VALUE(LEFT(C2,5))=$A$3,
"Threes",
IF(VALUE(LEFT(C2,5))=$A$4,
"Twos",
"No match")
)
)
Você pode usar o Vlookup, escrever sua matriz assim:
Primeiro valor de cinco dígitos1
Segundo valor de cinco dígitos2
Terceiro Valor de Cinco Dígitos3
Você pode adicionar o quanto não precisar de limite e digamos que as referências dessa matriz sejam $ A1: $ B3, devem ser referências absolutas para corrigir a matriz.
Se os seus números estiverem na coluna C, escreva D o seguinte:
= IFERROR (VLOOKUP (VALOR (ESQUERDA (C1,5)), $ A $ 1: $ B $ 3,2, FALSE), "")
Tags microsoft-excel