Números de preenchimento com comprimento específico na planilha do Google [fechado]

33

Eu tenho uma coluna com números inteiros como este: 1, 2, 3, 4, 5e eu quero criar outra coluna com esses valores preenchidos no comprimento de três como este: 001, 002, 003, 004, 005.

É possível preencher o comprimento da string no Google Spreadsheet?

Eu não estava conseguindo encontrar uma função padrão para isso.

Slava Fomin II
fonte
2
Não é exatamente isso que você solicitou, mas alcança um efeito comparável e pode ser uma solução para uma tarefa comum que as pessoas procuram: (1) selecione a coluna com os números que deseja preencher. (2) Selecione Formato> Número> Mais formatos> Formato de número personalizado ... (3) Na caixa de diálogo, insira o número de 0 quantos dígitos a sequência numérica deve ter, por exemplo, 000 no seu exemplo.
Tophcito
2
Ele não deve ser simplesmente fechado, ele deverá ser transferido para webapps.stackexchange.com
Lennart Rolland

Respostas:

53

A maneira recomendada é usar a função TEXT () .

Resumo rápido de como você o usaria no seu caso:

=TEXT(5,"000")

Saída:

005

É claro que você substituiria o literal 5 por uma referência a outra célula onde está o número de origem.

Lennart Rolland
fonte
Haveria uma maneira de preencher espaços?
Álex
Eu acho que apenas substitua "000" por "" acima
Lennart Rolland
12

Se você deseja apenas exibir alterações, pode aplicar o formato de número personalizado "000" às células.insira a descrição da imagem aqui

Selecione as células, clique em Formatar> Number> Mais formatos> formato de número personalizado ... .

Da ajuda dos editores do Documentos :

Um dígito no número. Um 0 insignificante aparecerá nos resultados.

sylr
fonte
2
Você pode editar sua resposta para expandir como o OP faria isso?
Burgi
3

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 3pelo comprimento do preenchimento e 0pelo 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 Acoluna com a string de preenchimento. Podemos fazer isso com a CONCATENATEfunçã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 REPTfunção para repetir nosso caractere de preenchimento várias vezes como este:

=REPT("0", 2)

Esta fórmula será repetida 0duas 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 LENfunçã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 REPTfunçã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)
Slava Fomin II
fonte
Perfeito! Esta é a melhor resposta e funciona com valores não numéricos
;-D