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.


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.


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.


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)

Perfeito! Esta é a melhor resposta e funciona com valores não numéricos
;-D
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.