Por que o Excel trata cadeias numéricas longas como notação científica, mesmo depois de alterar o formato das células para texto

94

Estou tentando processar alguns dados no Excel. Os dados incluem números de contas numéricas e outras cadeias numéricas longas (como MEIDs de telefone celular). Eu não estou fazendo operações matemáticas nessas cadeias, então eu quero que o Excel as trate como texto simples.

Aqui está o que está me deixando louco (isso é o Excel 2010):

  1. Pegue um número longo como 1240800388917 e cole-o em uma célula em uma nova planilha.
  2. O formato de célula padrão do Excel é geral, então a string é apresentada em notação científica como 1.2408E + 12
  3. Clique com o botão direito na célula, selecione Formatar células, defina o formato como Texto

A célula ainda é exibida em notação científica, mesmo que o formato tenha sido definido como texto.

Agora, se eu seguir as etapas em uma ordem diferente:

  1. Formate uma célula vazia como texto. Clique com o botão direito na célula, selecione Formatar células, defina o formato como Texto
  2. Pegue um número longo como 1240800388917 e cole-o na célula formatada em texto

Agora, a célula é exibida como uma string e não em notação científica.

Os resultados restantes em notação científica, embora a célula esteja formatada como texto, parece estar quebrada para mim. Eu já vi sugestões de soluções como: use a importação de CSV e defina o formato como texto, adicione um caractere de espaço ao início de cada sequência numérica e outros.

Existe um bom trabalho simples para manter facilmente essas sequências formatadas como texto?

Por que o Excel faz isso?

Perguntas relacionadas ao SU que encontrei: como você pode fazer o Excel 2007? parar de formatar grandes números como notação científica? e Este comportamento do Excel com um grande número hexadecimal é esperado?

    
por Michael Levy 16.04.2012 / 22:39

13 respostas

20

Ah, lembranças de dados voltando de quando eu fiz um grande número de cruzamentos no Excel (nunca mais) .. Quando você digitou strings numéricas longas no Excel, por exemplo, 12345678901234567890 (20 dígitos), o Excel geralmente < em> convertê-lo para você, o que significa que o número de 20 dígitos que você acabou de tocar foi cortado para ser apenas cerca de quinze números significativos.

Note também: a conversão é um truncamento, ao contrário do arredondamento. (12345678901234567890 é 1.2345678901234 6 E + 19, mas o excel mostrará 1.2345678901234 5 E + 19)

Isso ocorre no ponto de entrada, portanto, assim que entra, qualquer detalhe adicional é perdido e, mesmo se você disser ao Excel que realmente quis dizer que era texto, e não um número, está meio sem sorte, e daí porque sua primeira sequência não funciona.

    
por 17.04.2012 / 01:45
136

Isso funcionou para mim no Excel 2010. Basta selecionar a coluna, clicar com o botão direito, Formatar células, Personalizar e escolher a opção que diz 0 (segunda opção abaixo de Geral).

    
por 23.07.2014 / 12:53
12

Um único apóstrofo 'antes de um número forçará o Excel a tratar um número como texto (incluindo um alinhamento à esquerda padrão). E se você tiver erros sinalizados, ele será exibido como um número armazenado como erro de texto na célula.

    
por 16.04.2012 / 23:01
10

Descobri que, no Office 2010, se você formatar a coluna primeiro e depois colar os dados, ela mostrará os números grandes corretamente.

    
por 28.09.2012 / 18:44
10

Tente isso ... isso funciona para mim, Excel 2013.

=""&a1

em que a1 contém o valor numérico. Depois, copie a coluna e cole na coluna original.

    
por 05.07.2013 / 09:44
4

Você pode formatar células como Personalizadas > #

Isso pode ser aplicado depois de colar os dados na coluna, mas você deve fazer isso antes de salvar a planilha.

Eu trabalho muito com códigos de barras (UPCs) e o Excel os formata como notação científica por padrão. Me deixa louca! Por que isso não é uma opção que eu nunca saberei.

    
por 02.07.2014 / 17:02
3

Excel 2010: isso funciona uma coluna de cada vez e não para uma linha. Selecione a coluna ou subconjunto de uma coluna, na guia Dados, selecione "Texto para Colunas" e pule para a direita para "Concluir". Não há mais notação científica.

Concordo com muitos usuários do Excel, é criminoso não haver opção para impedir a notação científica!

    
por 15.08.2013 / 00:15
3

Estou ciente da idade da pergunta, mas esta é a que eu desembarquei após a pesquisa do Google e que não respondeu à minha pergunta (por que a formatação como texto não funciona e por que o número é reduzido para 15 dígitos após o formato para o texto).

Resposta curta é: você não pode trabalhar no seu número da maneira que você gosta DEPOIS que você digitou o valor numérico e tocou Enter . No momento em que você fizer isso, o número será truncado para 15 dígitos e apresentado como exponencial.

Isso não é um bug, é um recurso.

Qualquer coisa que você fizer depois disso estará usando o valor truncado, portanto, nenhum truque de formatação ajudará. No entanto, você pode usar a opção Text to columns para converter a notação exponencial em texto (Clique no cabeçalho da coluna, clique em Text to data , depois Delimited , Next , desmarque todas as caixas delimitadoras, Selecione Text in Column data format e então Finish ) para que os valores sejam convertidos em texto e imediatamente exibidos como um número de 15 dígitos. Mas serão apenas 15 dígitos, então se você tiver um número maior, o descanso será perdido.

Para que o número na planilha exatamente seja digitado, você precisa armazená-lo como texto. Portanto, você precisa precedê-lo com apóstrofo ou formatar células como texto antes de digitar / copiar valores nele. Se "às vezes não funcionar", então, desculpe, você faz algo errado ou tem algum tipo de correção automática (se você usa apóstrofo e números grandes > 15 dígitos, o Excel o trata como um valor errado e sinaliza a célula com mensagem de aviso, então esta observação não é pessoal nem crítica).

Outra maneira de fazer isso em números em massa é importar valores do arquivo de texto. Eu ouso dizer que é o único caminho para a maioria das situações. E certifique-se de importar o arquivo, e não apenas abri-lo, pois o Excel trata o csv type como se fosse nativo e apara grandes números em 15 digitos, como é óbvio.

Agora, para a última edição. Se você inserir um grande valor numérico na célula do Excel formatado como texto, ele ainda será exibido em notação científica, desde que a célula não seja larga o suficiente. É irritante, mas efeito colateral de alguns algoritmos internos do Excel. Apenas deixe o celular mais amplo e você verá o valor total toda vez.

    
por 03.11.2016 / 18:38
1

No Excel 2013, aconteceu a mesma coisa comigo e fui para o formato Células - > Número, em seguida, certificou-se de que a casa decimal está definida como "0".

    
por 21.10.2015 / 21:48
0

Selecione todas as células - ou, para facilitar as coisas - selecione a planilha inteira e clique em Formatar células , depois em Texto .

Automaticamente, toda a sua planilha usará texto. Você não precisa fazer isso célula por célula.

    
por 17.04.2012 / 07:40
0
  1. Copie / cole o campo do problema em uma nova planilha na coluna A

  2. Copie / cole a coluna A no arquivo de texto

  3. Formate a coluna B para texto e cole o arquivo de texto na coluna B

  4. Na coluna C:

    =IF(ISNUMBER(SEARCH("+",B1)),A1,"")
    
  5. Converta a coluna C em um formato numérico sem decimais

  6. Copie / cole a coluna C no arquivo de texto

  7. Formate a coluna D em texto e cole o arquivo de texto na coluna D

  8. Na coluna E:

    =IF(IF(IF(B2=A2,A2,D2)=0,A2,IF(B2=A2,A2,D2))=0,"",IF(IF(B2=A2,A2,D2)=0,A2,IF(B2=A2,A2,D2)))
    
  9. Copie / cole a coluna E no bloco de notas

  10. Exclua dados no campo de problema e formate a coluna para o texto

  11. Copie / cole dados do arquivo de texto para o campo de problemas

por 27.09.2013 / 20:39
0

Isso funcionou para mim no Excel 2013, incluindo copiar e colar as células em outros programas. Filtrar os dados ajudou, especialmente nas etapas de edição.

  1. Selecione sua (s) célula (s) desejada (s).
  2. Aplique o formato de número "Texto". (Tente Alt, H, N, depois "Texto".)

Então, para cada célula desejada:

  1. Entre no modo de edição. (Tente F2.)
  2. Confirme sua edição com Enter (bom para colunas) ou Tab (bom para linhas). Não altere o conteúdo.

Seu número aparecerá normalmente, mesmo com 100 dígitos. =)

    
por 28.01.2014 / 23:58
0

O Excel é frustrante para o trabalho de dados CSV / em massa como este. Trabalhe com o LibreOffice se possível, ele não faz isso, isto é, se você abrir a mesma planilha (.xlsx) no LibreOffice, os grandes 'números' que são realmente strings não são exibidos em notação científica (o que é uma decisão absurda pelo Excel). A fidelidade de arquivos do LibreOffice é ótima: abra o mesmo .xlsx no Excel novamente, e a notação científica instantaneamente "funciona" como de costume.

    
por 28.02.2018 / 22:47