Ir ao conteúdo
  • Cadastre-se

Excel Macro para importar e organizar arquivo txt


Ir à solução Resolvido por Basole,

Posts recomendados

Olá, sou novo mexendo com VBA, estou com o seguinte problema:

 

Estou automatizando algumas coisas no meu setor e ao receber um arquivo em txt., desenvolvi uma macro que puxa os arquivos de campos determinados no txt e transporta para excel em células distintas, a transição deu tudo certo, as células estão preenchidas de forma correta, só tenho um problema, as datas estão vindo invertidas, por exemplo "11/03/2020" esta vindo "03/11/2020", estou deixando meu código aqui e também o arquivo em txt que importo, dentro da pasta .rar, se puderem me ajudar, agradeço.

 

Codigo:

Sub Teste_txt()

    Range("A1").Select

    ActiveCell.FormulaR1C1 = "Emissão"

    Range("B1").Select

    ActiveCell.FormulaR1C1 = "Título"

    Range("C1").Select

    ActiveCell.FormulaR1C1 = "/P"

    Range("D1").Select

    ActiveCell.FormulaR1C1 = "Estab"

    Range("E1").Select

    ActiveCell.FormulaR1C1 = "Espécie"

    Range("F1").Select

    ActiveCell.FormulaR1C1 = "Série"

    Range("G1").Select

    ActiveCell.FormulaR1C1 = "Vencimento"

    Range("H1").Select

    ActiveCell.FormulaR1C1 = "Portador"

    Range("I1").Select

    ActiveCell.FormulaR1C1 = "Cart"

    Range("J1").Select

    ActiveCell.FormulaR1C1 = "Cliente"

    Range("K1").Select

    ActiveCell.FormulaR1C1 = "Nome"

    Range("L1").Select

    ActiveCell.FormulaR1C1 = "UF"

    Range("M1").Select

    ActiveCell.FormulaR1C1 = "VL Original"

    Range("A2").Select

    Dim Conteudodalinha As String 'dimensão de sequencia caracteres

Open "C:\Users\ELIETE VIEGAS\Desktop\Macro Faturamento\Teste.txt" For Input As #1

 

    Do While EOF(1) = False 

   

        Line Input #1, Conteudodalinha 

       

If IsNumeric(Mid(Conteudodalinha, 7, 1)) = True Then 'Busca números na base

Cells(ActiveCell.Row, 1) = Mid(Conteudodalinha, 1, 10) 'Preenche a linha na col 1

Cells(ActiveCell.Row, 2) = Mid(Conteudodalinha, 12, 16) 'Preenche a linha na col 2

Cells(ActiveCell.Row, 3) = Mid(Conteudodalinha, 29, 2) 'Preenche a linha na col 3

Cells(ActiveCell.Row, 4) = Mid(Conteudodalinha, 32, 5)  'Preenche a linha na col 4

Cells(ActiveCell.Row, 5) = Mid(Conteudodalinha, 38, 7)  'Preenche a linha na col 5

Cells(ActiveCell.Row, 6) = Mid(Conteudodalinha, 46, 5)  'Preenche a linha na col 6  

Cells(ActiveCell.Row, 7) = Mid(Conteudodalinha, 52, 10)  'Preenche a linha na col 7  

Cells(ActiveCell.Row, 😎 = Mid(Conteudodalinha, 63, 😎 'Preenche a linha na col 8  

Cells(ActiveCell.Row, 9) = Mid(Conteudodalinha, 72, 4)  'Preenche a linha na col 9

Cells(ActiveCell.Row, 10) = Mid(Conteudodalinha, 77, 11)  'Preenche a linha na col 10  

Cells(ActiveCell.Row, 11) = Mid(Conteudodalinha, 89, 30)  'Preenche a linha na col 11  

Cells(ActiveCell.Row, 12) = Mid(Conteudodalinha, 130, 3)  'Preenche a linha na col 12  

Cells(ActiveCell.Row, 13) = Mid(Conteudodalinha, 135, 14)  'Preenche a linha na col 13     

     Cells(ActiveCell.Row + 1, ActiveCell.Column).Select

        End If

 

    Loop

   

    Close 1

End Sub

 

Teste.rar

Link para o comentário
Compartilhar em outros sites

  • Solução

Substitua as linhas abaixo no seu código.

 

Cells(ActiveCell.Row, 1) = VBA.Format(Mid(Conteudodalinha, 1, 10), "mm/dd/yyyy") 'Preenche a linha na col 1
Cells(ActiveCell.Row, 7) = VBA.Format(Mid(Conteudodalinha, 52, 10), "mm/dd/yyyy") 'Preenche a linha na col 7

 

  • Amei 1
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...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!