Tenho uma tabela no Excel que tem uma linha de cabeçalho e dados nas células A2 (texto), B2 (texto), C2 (texto), D2 (texto) e E2 (número). A2, B2, C2, D2 são menus suspensos com diferentes dados selecionáveis. E2 é uma fórmula para gerar automaticamente um número incremental sempre que uma nova linha é adicionada à tabela.
Gostaria de gerar automaticamente uma referência na célula N2 que é composta dos dados em A2, B2, C2, D2, E2. Por exemplo:
A2=Maçã B2=Verde C2=Maduro D2=Localização E2=0001
O resultado desejado na célula N2 seria APP-GRE-RIP-LOC-0001
Tive algum sucesso com:
=SE(A2="Apple","APP-"&E2)
O resultado na célula N2 será APP-0001. No entanto, não tenho certeza de como aninhá-los, então o resultado é diferente com base nos dados nas células. E também se há uma fórmula mais flexível, pois os dados nas listas suspensas podem ser expandidos ao longo do tempo.
Desde já, obrigado!
Não use
Concatenate()
. Não é obrigatório e é muita coisa para digitar. Você pode simplesmente usar o&
caractere.Parece que você quer pegar os três primeiros caracteres das células e juntá-los, separados por um traço "-", seguido pelo valor em E2. Para isso, você pode usar:
A fórmula usa a função LEFT() para extrair os três primeiros caracteres das células A2 a D2, coloca um traço entre eles, concatena E2 e coloca tudo em maiúsculas com UPPER()
Ou, mais curto com
Outra opção é TEXTJOIN:
Edição: Para retornar corretamente todas as células numéricas, basta removê-las da chamada para LEFT: