Solução temporária
Aqui está a solução temporária que eu criei.
Fórmula de trabalho
Basta usar esta fórmula:
`=IF(LEN(A2)<3, CONCATENATE(REPT("0", 3-LEN(A2)), A2), A2)`
Substitua 3
pelo comprimento do preenchimento e 0
pelo caractere de preenchimento. A2
é uma fonte de preenchimento.
Explicação
Considere a seguinte planilha:
-------------
| A | B |
-------------
| 1 | 001 |
-------------
| 2 | 002 |
-------------
| 31 | 031 |
-------------
| 45 | 045 |
-------------
| 500 | 500 |
-------------
Temos a coluna inicial (A) com números inteiros que queremos preencher. A coluna (B) conterá a fórmula especial para processar os dados.
Concatenar!
Primeiro de tudo, precisamos de uma maneira de concatenar o valor da A
coluna com a string de preenchimento. Podemos fazer isso com a CONCATENATE
função:
=CONCATENATE("00", A2)
Repetir!
No momento, o caractere de preenchimento 0
é repetido duas vezes em nossa fórmula. Isto não é bom. Podemos usar a REPT
função para repetir nosso caractere de preenchimento várias vezes como este:
=REPT("0", 2)
Esta fórmula será repetida 0
duas vezes. Vamos combiná-los:
=CONCATENATE(REPT("0", 2), A2)
Calcular o comprimento!
Isso é melhor. Mas o comprimento do preenchimento tem um valor constante em nossa fórmula e isso não funciona com números maiores que 9. Podemos corrigir isso calculando o comprimento da string preenchida (usando a LEN
função) e subtraí-la do comprimento desejado:
=3-LEN(A2)
Vamos adicioná-lo à nossa fórmula:
=CONCATENATE(REPT("0", 3-LEN(A2)), A2)
No entanto, obteremos resultados negativos para valores maiores que 999 e isso interromperá a REPT
função (o número de repetições não pode ser negativo).
Podemos corrigi-lo facilmente adicionando uma condição:
=IF(LEN(A2)<3, "APPLY REPT", "OUTPUT AS IS")
Vamos juntar as peças finais:
=IF(LEN(A2)<3, CONCATENATE(REPT("0", 3-LEN(A2)), A2), A2)