2015-01-07 20:44:09 +0000 2015-01-07 20:44:09 +0000
22
22
Advertisement

Como posso impedir o Excel de converter automaticamente o valor 0503E000 para 5.03E+02?

Advertisement

Excel convertendo o valor 0503E000 para 5.03E+02 em qualquer célula automaticamente em CSV Tentei convertê-lo para número de texto e geral mas depois de o guardar e reabri-lo de novo volta a 5.03E+02

Como faço para impedir que isto aconteça?

Advertisement
Advertisement

Respostas (7)

27
27
27
2015-01-08 05:58:13 +0000

Se conseguir converter ou controlar o formato CSV_, pode forçar uma coluna a analisar como texto em Excel, envolvendo-a em aspas duplas e prependendo um sinal de igual.

Excel descartará descuidadamente a precisão neste formato:

Value,0503E000,1234123412341234

Ou mesmo este formato:

Value,"0503E000","1234123412341234"

Convertendo-o para:

Value | 5.03E+02 | 1234123412341230

No entanto, a adição do sinal de igual força o Excel a preservar os seus dados a contragosto:

Value,="0503E000",="1234123412341234"

…que se abre como:

Value | 0503E000 | 1234123412341234
16
16
16
2015-01-07 21:21:02 +0000

Penso que a questão chave aqui é que está a usar um CSV, que não tem o tipo de célula nele incorporado. O Excel tenta automaticamente interpretar a célula como tendo um número científico, razão pela qual está a ver 5.03E+02 em vez de 0503E000.

Tente criar uma pasta de trabalho Excel e formatar todas as células como texto, e depois colar nos dados. Experimentei-a em Excel 2013 e funcionou.

9
Advertisement
9
9
2015-01-08 02:35:42 +0000
Advertisement

Em vez de Abrir“ o ficheiro CSV em Excel, seleccione para Importar o ficheiro (em Excel 2007-2010 navegaria para a Fita de Dados / Obter Dados Externos / De Texto). Não tenho a certeza sobre 2013, mas deveria haver algo semelhante. Quando o fizer, o assistente de Importação de Texto abrir-se-á e dar-lhe-á a oportunidade de formatar a coluna que contém esse Valor como Texto, antes de o Excel (não de forma tão útil) o alterar para um valor numérico.

2
2
2
2015-01-08 07:16:27 +0000

Comece a célula com um apóstrofo para forçar a interpretação do texto:

'0502E000

Basicamente, isto diz ao Excel para não analisar o campo como um número. Como há um “E” no campo, parece um número para o Excel. O apóstrofo não será de facto introduzido na célula:

[a1] '0502E000
[b1] =hex2dec(a1)

Célula ‘b1’ exibirá 84074496.

0
Advertisement
0
0
2019-07-26 20:41:40 +0000
Advertisement

Colar os dados numa folha de cálculo do google. Seleccione a coluna ===> Formato ==> Número => Formato personalizado => digite o número de dígitos para os quais pretende que o formato aconteça (ex: 10 dígitos = 0000000000)

0
0
0
2019-02-27 15:40:33 +0000

Tente carregar o ficheiro (dados obtidos a partir da tabela DB) através da opção DATA no MS excel e depois, simplesmente enquanto carrega, basta seleccionar “Não detectar tipos de dados” em “Data Type Detection” e depois carregar , isto manterá o formato de dados e cargas excel, sem necessidade de quaisquer conversões de colunas.

-1
Advertisement
-1
-1
2017-02-07 18:34:08 +0000
Advertisement

Com a formatação padrão das células, os números com um zero na frente e números longos serão automaticamente modificados pelo Excel. Por exemplo, se se digitar 012, será alterado para 12.

Se formatar as células como Texto , então qualquer número que digitar na célula ficará como está, e não será modificado pelo Excel.

Contudo, se colar um número de outra fonte numa célula formatada como Texto , e na fonte houver qualquer tipo de formatação, a formatação da célula mudará de Texto para Geral , e a manipulação do número voltará.

A solução que encontrei foi a de fazer uma pasta especial, e colar o número como Texto. Depois a célula permanece com a sua formatação *Texto** , e o número não é modificado em absoluto.

Advertisement

Questões relacionadas

6
13
9
10
5
Advertisement
Advertisement