Mesclar duas células “AAA” e “001” para obter “AAA-001”?

0

Eu estou tentando mesclar duas células em uma e saber como fazer isso de forma fácil e agradável, meu problema é que os números abaixo de 100 (ou seja, 001) perdem seus "0".

Exemplo:

Célula A1 - "AAA" Célula B1 - "001" Célula C1 - = A1 & "-" & B1

A célula C1 deve mostrar "AAA-001", mas mostra apenas "AAA-1"

A célula B1 é formatada para ser um número mostrando 001.

Eu tentei usar o CONCANTATE e o TEXT, mas sem sucesso. Alguém sabe como posso fazer o excel produzir o resultado "AAA-001"?

    
por Kevin Anthony Oppegaard Rose 12.12.2013 / 13:36

2 respostas

5

O problema é que, a menos que você diga de alguma forma, o excel interpretará o número como um número e não examinará o formato especificado para o número. Você pode resolver isso de duas maneiras:

1) Formato B1 como texto

2) Mais elegante - use a fórmula de texto para converter o número em texto no formato desejado:

 =A1&"-"&TEXT(B1,"000")

Isso dará o resultado desejado e preservará B1 como número que pode ser usado para cálculos. Fórmula de texto leva dois argumentos separados por vírgula, o primeiro é o número, o segundo é o formato desejado. Digamos que se você quisesse inserir o sinal de sustenido antes do valor e usar o ponto decimal, seu formato seria "000.000,00"

    
por 12.12.2013 / 13:58
0

Tente adicionar uma única citação na célula na frente do 001 assim: '001.

ou

se isso não for possível, então usaria uma função VBA (coloque-a em um módulo VBA):

Public Function Padding(cell As Range, paddingFormat As String) As String
  Padding = format(cell.Value, paddingFormat)
End Function

Então você poderia usar uma fórmula como: = Concatenar (A1; "-"; Preenchimento (A2, "000")) - o preenchimento retorna 001, mesmo que A2 seja igual a 1.

o padFormat é baseado na função Format (ver link abaixo). No seu caso, você precisa de 000 para forçar 3 dígitos no mínimo o tempo todo. link

    
por 12.12.2013 / 13:49