Aumentar o limite de tamanho da importação de dados do csv para o Excel

12

Tenho uma carga de dados em um arquivo csv que estou importando para o Excel, a maioria é boa, mas uma das minhas colunas contém até 1.000 caracteres de dados. Infelizmente, o Excel assumiu a responsabilidade de assumir que há mais dados do que eu preciso e parece estar diminuindo (a 255 caracteres).

Como posso aumentar esse limite e reter todos os meus dados?

SwiftD
fonte
O que você quer dizer com "Infelizmente, o Excel assumiu a responsabilidade de assumir que há mais dados do que eu preciso e parece estar diminuindo". não é exibido corretamente? o que acontece se você colocar =LEN(A1)no Excel onde A! é a referência ao seu texto?
Peter Albert
Diz 255, e quando olho para os dados Na caixa de entrada da fórmula, ele pára de repente. Eu posso exibir os dados completos no escritório aberto, mas assim que colo para o Excel parece estar limitando a 255 caracteres. A razão pela qual não estou usando o open office é porque posso colar como dados ou fazer uma consulta.
SwiftD
O Excel pode manipular textos com mais de 255 caracteres. No entanto, se a célula for preenchida pelo VBA, será um pouco complicado. Qual é a sua fonte? Como você o coloca no Excel?
Peter Albert
Eu tenho uma exportação csv do magento. Se eu abrir no OO, ele tem o texto completo. Se eu abrir no Excel, será cortado. Também é cortado quando colo do OO para o Excel e não consigo digitar mais manualmente na célula, ele é cortado no mesmo ponto assim que saio da célula.
SwiftD
Talvez algo esteja errado com o CSV? Você pode atualizar sua pergunta e postar algumas linhas? Além disso, talvez as configurações de delimitador e separador em sua máquina comecem a funcionar?
precisa saber é o seguinte

Respostas:

13

Há um erro estranho no Excel. Vou explicar aqui como evitá-lo (não consertá-lo, apenas evitá-lo), e talvez seja corrigido em breve pelos programadores do MS Office. Talvez ele tenha sido corrigido no Excel 2013, ainda não o abri.

Então, esse é o problema.

O comprimento máximo da célula de texto é 32767 e tudo bem.

O comprimento máximo da célula numérica é 255 e está OK.

Mas se você tiver uma célula que liga para o analisador de números, falha e depois chama para o analisador de texto, aqui está a grande bagunça.

Por exemplo:

...,"This is a cell with 30,000 characters........",...

vai funcionar.

Mas se você colocar um pouco de menos no início, como em

...,"-This is a cell with 30,000 characters........",...

você verá apenas 255 caracteres de primeiro texto, porque o EXCEL considera um número negativo.

Espero que ajude.

khitron23
fonte
3
Este é o bug mais estranho e mais estúpido que já vi em software comercial. Está literalmente me deixando louco, como você pode pagar por esse tipo de merda?
Astrojuanlu # 22/14
Muito boa explicação, obrigado. Infelizmente, posso confirmar, que - 3 anos mais tarde - o bug ainda está presente no Excel 2016 ...
BurninLeo
Bem, @BurninLeo, posso dizer que três dias após a minha resposta original, fiz uma chamada de bate-papo para o Centro de desenvolvedores do MS Office e dei a eles um link para este tópico de superusuário.
khitron23
O problema parece ser resolvido com o Excel 365 ProPlus versão 1902.
Carsten Franke
1

Eu me deparei com esse problema com um arquivo csv que tinha alguns campos de texto longos que às vezes começavam com um traço. Parece que a importação do Excel tenta processar o campo como um número por causa do traço, e a importação do número o reduz a 255 caracteres. Quando isso falha, ele importa como texto, mas apenas os primeiros 255 caracteres.

Para evitar o problema, tive que importar o csv em vez de apenas abri-lo. No assistente de importação, selecionei a coluna que estava com problemas e alternei seu tipo de Geral para Texto. Em seguida, o Excel nem tentará analisá-lo como um número e recebo a largura total da coluna.

Don Kirkby
fonte
0

Em primeiro lugar, obrigado a todos pela ajuda na tentativa de resolver isso. Acontece que o excel pode acomodar mais de 255 caracteres em uma célula (presumivelmente até 32.767 como mencionado anteriormente, se você tiver o ram para isso).

Então, por que não é trabalho?

A resposta curta é que não tenho certeza. A primeira vez que trouxe os dados para o Excel, exportei como um CSV e abri no Excel. Isso cortou as colunas curtas (em 255). (o arquivo csv continha todos os dados quando visualizados no bloco de notas, mas não quando salvos novamente no Excel).

A coluna em questão continha alguns pontos e vírgulas, mas isso não correspondia ao ponto de corte (sempre 255) e eu não estava usando; como um delimitador.

Minha solução foi fazer uma exportação como um arquivo xls. Desde então, isso foi salvo com sucesso como um arquivo csv com os dados completos.

Espero que isso ajude alguém, mesmo que ainda não tenha certeza do problema.

SwiftD
fonte
A pesquisa simples no Google resulta em várias postagens no fórum de pessoas que têm o mesmo problema; provavelmente é apenas um bug na rotina de importação do Excel CSV.
Marcus Chan
0

De acordo com http://office.microsoft.com/en-us/excel-help/excel-specifications-and-limits-HP010342495.aspx , o Excel 2010 suporta apenas uma largura de coluna de 255 caracteres.

Edit: Esse é o problema que você está falando, Webweaver? Formatar> Células> Quebrar texto torna o restante dos caracteres visíveis?

Edit: Não importa, esta resposta não está relacionada com o problema em questão (possivelmente relacionado de alguma forma, mas não responde à pergunta)

Marcus Chan
fonte
Não, essa é a LARGURA DA COLUNA. Na mesma tabela, o "Número total de caracteres que uma célula pode conter" é 32.767 caracteres.
Vicky
@ Vicky, não é esse o problema que o solicitante está enfrentando? Ou interpretei mal a pergunta?
Marcus Chan
@nixda real? sim muito chato. Eu não posso acreditar que o excel não aguenta mais os 255 caracteres. Existe uma maneira de fazer isso!
SwiftD
@ Marcus Eu não entendo o que significa largura da coluna. Este não é apenas um problema de exibição, os dados não estão lá. É cortado. quando eu salvo como um CSV, os dados não estão lá. Quando eu faço len (celular), o resultado é 255.
SwiftD
@MarcusChan, o número de caracteres deve ser limitado a 32767. O usuário está passando por 255. O que você estava se referindo era a largura da coluna, que tem a ver com a forma como a coluna é exibida, o que não é o problema do OP.
Vicky
0

Geralmente, essa é uma limitação antiga que não se aplica mais às versões modernas do Excel (2013 de qualquer maneira). No entanto, se uma pasta de trabalho foi criada originalmente em uma versão mais antiga, os objetos de célula que foram modificados (ou seja, instanciados com propriedades e atributos específicos) na versão mais antiga, aparentemente, manterão a limitação de 255 caracteres, mesmo quando abertos em versões mais recentes do Excel!

Um conserto:

  1. Usando uma versão moderna do Excel, em uma célula diferente e não utilizada na planilha, recrie qualquer formatação e / ou condição de intervalo mesclado necessária para a célula com problema.
  2. Certifique-se de que esteja definido no formato Geral ou Texto.
  3. Recorte ou copie e cole a nova versão recriada da célula (ou intervalo mesclado) e cole-a na versão antiga e incorreta.
  4. Agora, ao inserir dados na célula, o problema não deve mais se manifestar.

Como o WebweaverD postou posteriormente, ele encontrou uma solução para seu problema de importação de CSV. Além disso, se as células estiverem sendo preenchidas via VBA, a situação ficará mais complexa, como mencionado por outras respostas. Mas se os dados estiverem sendo inseridos manualmente ou copiados / colados de outro aplicativo em uma pasta de trabalho herdada, o problema pode ser causado por esse problema de atributo de célula herdado.

pstraton
fonte
0

Eu tive um problema semelhante, todos os meus valores estavam em formato (para converter números em números, texto em texto, mas foram cortados textos longos:

...,="Long Text........",...

se você colocar um = no início, verá apenas 255 caracteres de primeiro texto, porque o EXCEL acha que é um número, então remova = no início.

Espero que ajude.

metodi25
fonte
1
Isso é diferente do que alguém já pode ter mencionado em uma resposta? Isso pode precisar ser sinalizado e você pode solicitar que um moderador se converta em um comentário, pois você não tem representante suficiente para fazer por conta própria.
Pimp Juice IT
0

Soluções alternativas (disponíveis no Excel 2016) ...

Opção A. Faça o Excel executar o assistente de importação de texto (usando algo como uma extensão de arquivo .txt ou use a extensão .xls, aceite o aviso, selecione a primeira coluna e faça Data => 'Text to Columns'). Em seguida, altere o tipo de coluna de Geral para Texto próximo ao final do assistente.

Opção B. Use Obter e transformar. Dados => Nova consulta => Do arquivo => Do CSV.

stevlars
fonte
Considere adicionar alguma referência a esta resposta para apoiar o que você declara.
Pimp Juice IT