Como faço para converter .txt em .xls?

3

Eu tenho um arquivo .txt que contém alguns links para um site. São cerca de 560 links. Estou tentando converter meu arquivo .txt em um arquivo do Excel com um nome de coluna.

Como posso fazer isso?

    
por Twisty Impersonator 24.06.2010 / 15:12

7 respostas

6

Você pode fazer o arquivo | Abra o arquivo txt e você verá um aviso para importar o arquivo. Ele deve perguntar como o arquivo é delimitado (como ',' ou '|' ou \ t etc.) e você pode importar para uma planilha do Excel.

    
por 24.06.2010 / 15:18
1

Supondo que seja um link por linha, adicione uma linha na parte superior contendo o nome da coluna e, em seguida, renomeie-a para .csv e tente abri-la com o Excel.

    
por 24.06.2010 / 15:15
0

Eles são um link por linha? Você deve conseguir copiar / colar no Excel. Caso contrário, use uma função de pesquisa e substituição em um editor de texto decente para adicionar um retorno de carro antes de cada "http: //". Em seguida, cole.

@jiraz você chegou lá primeiro!

    
por 24.06.2010 / 15:18
0

Outra opção seria copiar do arquivo txt e colar em uma planilha vazia. Da mesma forma, você pode usar o recurso de importação do Excel (Dados > Obter dados externos).

    
por 24.06.2010 / 15:19
0

Se você quiser fazer isso manualmente, basta abri-lo usando o Excel, e o assistente de importação de arquivos de texto do Excel aparecerá e guiará você pelo resto do caminho. Essa abordagem é a melhor maneira de lidar com arquivos de texto de tamanho fixo e também funciona muito bem com arquivos delimitados (não apenas csv).

    
por 24.06.2010 / 15:23
0

Usando o OleDb. Isso é um exagero para uma tarefa comum.
1. Crie o modelo .xls file. Use a linha superior para os nomes das colunas. Você deve fazer uma cópia programaticamente e carregar a cópia durante a etapa 2.
2. using (OleDbConnection conn = new OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0; data source=" + templatefilename + "; Extended Properties=Excel 8.0"))
3. OleDbCommand cmd = new OleDbCommand("insert into...", conn); cmd.ExecuteNonQuery;

    
por 24.06.2010 / 15:28
0

Supondo que você queira fazer isso programaticamente (isso é o Stack Overflow, afinal), existem três técnicas básicas:

(i) converta o arquivo de texto para o formato CSV e abra-o no Excel.

(ii) use a biblioteca COM de automação integrada do Office e chame isso de código (aqui está um exemplo em C # link , no VB.NET link ).

(iii) use uma biblioteca de terceiros para criar o arquivo excel (por exemplo, link ).

Cada um tem suas vantagens e desvantagens:

(i) Definitivamente a opção mais simples e mais barata, embora menos flexível em termos de layout, formatação, etc. Além disso, o Excel tem problemas para abrir CSVs. Por exemplo, ele tentará ser inteligente interpretando qualquer sequência de caracteres numéricos como um número e, portanto, formatá-lo como tal. Isso é irritante porque, se o seu CSV contiver, digamos, um número de telefone que comece com zero (por exemplo, 0292630678), o Excel removerá o zero inicial. Se você não tiver o requisito de zeros iniciais e tudo que você precisa exibir é uma tabela básica no Excel, essa técnica é provavelmente a mais simples e fácil.

(ii) A abordagem mais flexível, embora possivelmente também a mais complexa. Deve lhe dar o máximo controle sobre sua saída. Eu acredito que você precisa ter o Office instalado na máquina que está produzindo o seu arquivo XLS embora. Chamar a biblioteca COM do Office de uma versão do C # antes do 4.0 é um problema devido à falta de suporte para parâmetros opcionais, dos quais a interface COM faz uso extensivo (portanto, o VB.NET geralmente é a melhor opção neste caso). p>

(iii) Dependendo do componente escolhido, isso poderia ser mais simples e provavelmente funcionaria mais barato se você não tivesse o Office instalado na máquina que produz o arquivo.

Boa sorte.

    
por 24.06.2010 / 15:34