Ir ao conteúdo
  • Cadastre-se

Outro Inserir ','(Virgula) em colunas no txt


Posts recomendados

  • Membro VIP

Vou tentar fazer em Pascal/Delphi, serve?

 

adicionado 28 minutos depois

Aqui um esboço:

Program Insere_Virgula;
uses 
  CRT;
var 
  linha      :string;
  caminho    :string;
  arqEntrada,
  arqSaida   :text;
BEGIN
if Paramcount()=0 then
  writeln('Arraste o arquivo txt para cima deste programa')
else
  begin
  caminho:=ParamSTR(1);
  writeln('Caminho do arquivo: ',caminho);
  writeln;
  writeln('Arquivo de saida  : ','_TEMP.txt');
  writeln;
  Assign(arqEntrada,caminho); //associna o arquivo ou caminho recebido por parâmetro
  Reset(arqEntrada); //tenta abrir o arquivo
  Assign(arqSaida,'_TEMP.txt');
  Rewrite(arqSaida); //cria ou recria o arquivo
  while (not EOF(arqEntrada)) do
    begin
    readln(arqEntrada,linha);
    Insert(',',linha,Length(linha)-1);
    writeln(arqSaida,linha);
    writeln(linha);
    end;
  end;
Close(arqEntrada);
Close(arqSaida);
write  ('Pressione qualquer tecla para finalizar');
ReadKey;
END.

 

Ai você precisa de um compilador Pascal para gerar o executável.

obs.: como o arquivo é .exe, não é recomendado eu compartilhar o arquivo, pois apesar das boas intenções, o arquivo poderia conter vírus...

 

Abaixo um teste:

teste.jpg

 

No aguardo.

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Em 20/09/2017 às 17:49, Gaspert3 disse:

Olá Gente Beleza, tenho um arquivo txt com nome Tabela.TXT , queria acrescentar uma ,(virgula) em todas colunas.

Ex.:

 

É assim

00000011023

00000001971

 

queria que ficasse Assim

000000110,23

000000019,71

 

Se tiver como ser em arquivo BAT melhor ainda.

 

Agradeço

 

Não consegui ainda, não manjo nada de pascal, quero importar um arquivo txt como tabela de preços para dentro de um banco de dados, importo pelo ems, porém ele vai sem virgula, se tiver algo para me ajudar vou agradecer. Quero colocar virgula na coluna 146 e na coluna 157, para ja importar com o dado correto. Exemplo de uma linha abaixo.

 

000212952X000492SANOFI-AVENTIS                AAS                                          100MG CX 120 COMP                            0000000456900000006090000000000000000000019042017F7897595901927

 

Link para o comentário
Compartilhar em outros sites

Use o Vba para tratar esses dados e em seguida, exportar novamente com o novo layout.

Ou através de formulas no Excel: 

Ex.: Considerando que este exemplo de linha que voce postou esteja na celula A1: 

 

Use o seguinte conjunto de formulas: 

=ESQUERDA($A$1;146)&","& ESQUERDA(DIREITA($A$1;NÚM.CARACT($A$1)-NÚM.CARACT(ESQUERDA($A$1;146)));11)&","& DIREITA($A$1;NÚM.CARACT($A$1)-NÚM.CARACT(ESQUERDA($A$1;157)))

 

Veja o resultado: 

image.thumb.png.ad3d1a8ac347056d1f3abaab1080807b.png

 

 

 

 

  • Curtir 2
Link para o comentário
Compartilhar em outros sites

Cole seus dados na coluna A, utilize a coluna B como auxiliar, por exemplo, cole a formula, e retire o $ (sifrao) do numero da linha: $A$1 => $A1. E por ultimo arraste ate a ultima linha da coluna A com dados. 

 

*Se tratando de mais de 16 mil linhas, sugiro fazer que nem o Jack, por partes, pois o calculo das formulas pode demorar muito tempo. 

 

Faça por exemplo 500 em  500 linhas, copie e cole como valores, isso vai evitar que o excel, fique calculando todas as linhas com formulas.  

 

 

 

Link para o comentário
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...