none
Excel - Importando arquivos TXTs (Problema ao Importar Datas) RRS feed

  • Pergunta

  • Galera, preciso de ajuda para importar dados de arquivos .txt.

    Na verdade, já consigo tranquilamente importa-los porém, estou com problemas para importar datas.

    Toda vez que importo datas, ela vem no formato mm/dd/yyyy e preciso que elas estejam no formato dd/mm/yyyy. O estranho é que no próprio arquivo de texto a data está no formato pt-br (dd/mm/yyyy). Alguém poderia me dar uma luz?

    Abaixo parte do código que estou usando:

        Dim Ficheiro As String
        Dim rg As Range
        
        MsgBox ("Selecione o arquivo para teste...")
              
        Application.ScreenUpdating = False
        With Application.FileDialog(msoFileDialogFilePicker)
            .Show
            Ficheiro = .SelectedItems(1)
        End With
        
        Application.StatusBar = "Processando arquivo..."
        
        Sheets("SUST-PGS-JAN(14)").Select
            
        Set rg = Range("A5")
            
        Open Ficheiro For Input As #1
        
        Dim S As String
        Do Until EOF(1)
            Line Input #1, S
            
            rg = Val(Left(S, 10))
            rg.Offset(0, 1) = Mid(S, 8, 6)
            rg.Offset(0, 2) = Mid(S, 17, 36)
            rg.Offset(0, 3) = Mid(S, 53, 15)
            rg.Offset(0, 4) = Mid(S, 76, 18)
            rg.Offset(0, 5) = Mid(S, 94, 10)  'Data Emis
            rg.Offset(0, 6) = Mid(S, 104, 10) 'Data Vcto
            rg.Offset(0, 7) = Mid(S, 114, 10) 'Data Pgto
            rg.Offset(0, 8) = Mid(S, 125, 19) 'Valor
                            
            Set rg = rg.Offset(1, 0)
        Loop
        
        Close #1
            Application.ScreenUpdating = True
            
            Application.StatusBar = False
            
        MsgBox ("Importado com sucesso!!!")


    João HEYTOR Kreitlow Pereira ( jhkpereira@gmail.com - http://www.joaoheytor.com ) Certified in ITIL V3 Foundation and a Microsoft Certified Professional (MCP, MCTS [Windows 7 / Vista / Server Virtualization :: Configuration ] & MCSA)

    segunda-feira, 20 de janeiro de 2014 16:40

Todas as Respostas

  • Olá João,

    Não é minha área, mas dê uma olhada neste KB: http://support.microsoft.com/kb/113616/pt-br

    Verificou nas configurações regionais do computador se o formato da data está como você quer? http://office.microsoft.com/pt-br/excel-help/alterar-o-formato-padrao-de-data-hora-numero-ou-medida-HA010351415.aspx

    Não seria só a formatação da célula onde migra os dados? http://office.microsoft.com/pt-br/excel-help/funcao-data-HP010062283.aspx

    Atenciosamente,


    Edinaldo Oliveira

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    ** Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde. **

    segunda-feira, 20 de janeiro de 2014 16:49
  • João,

    Veja este link da Base de Conhecimentos falando sobre o assunto:

    http://support.microsoft.com/kb/113616/pt

    Se ajudou na sua solução, não esqueça de marcar como resposta !

    Abraços

    Durval Ramos
    Microsoft Partner | MTA - SQL Server 2012
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi util "Votar como Útil"
    segunda-feira, 20 de janeiro de 2014 16:49
  • Senhores,

    Obrigado pela resposta de ambos...

    Só complementando, a data do computador está correta sim (dd/mm/aaaa).

    Também notei um "problema"...

    Caso a data seja entre os dias 01 e 12, ela é importada no formato americano....

    Porém, caso o dia esteja entre 13 à 31, ela aparece no formato correto...

    Muito estranho, não?? :S


    João HEYTOR Kreitlow Pereira ( jhkpereira@gmail.com - http://www.joaoheytor.com ) Certified in ITIL V3 Foundation and a Microsoft Certified Professional (MCP, MCTS [Windows 7 / Vista / Server Virtualization :: Configuration ] & MCSA)

    segunda-feira, 20 de janeiro de 2014 17:35
  • Estranho realmente...mas o KB não ajudou?

    Edinaldo Oliveira

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    ** Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde. **

    segunda-feira, 20 de janeiro de 2014 17:37
  • Senhores,

    Obrigado pela resposta de ambos...

    Só complementando, a data do computador está correta sim (dd/mm/aaaa).

    Também notei um "problema"...

    Caso a data seja entre os dias 01 e 12, ela é importada no formato americano....

    Porém, caso o dia esteja entre 13 à 31, ela aparece no formato correto...

    Muito estranho, não?? :S


    João HEYTOR Kreitlow Pereira ( jhkpereira@gmail.com - http://www.joaoheytor.com ) Certified in ITIL V3 Foundation and a Microsoft Certified Professional (MCP, MCTS [Windows 7 / Vista / Server Virtualization :: Configuration ] & MCSA)

    João,

    Na verdade, o Excel corrige seu próprio erro quando o dia é maior que 12, porque neste caso ele entende que na verdade é um dia e não mês.

    Não esqueça de marcar todos os posts que ajudaram na solução como resposta !

    Abraços

    Durval Ramos
    Microsoft Partner | MTA - SQL Server 2012
    ----------------------------------
    Se foi resolvido clique "Marcar como resposta" e se foi util "Votar como Útil"
    segunda-feira, 20 de janeiro de 2014 17:38
  • João, alguma novidade? Conseguiu contornar o problema?

    Edinaldo Oliveira

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    ** Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde. **

    terça-feira, 21 de janeiro de 2014 11:10
  • Edinaldo,

    Por enquanto não... estou pensando em fazer algum tratamento no txt antes de importa-lo...

    Se pelo menos o Excel importasse todas as datas no mesmo formato, ficaria mais fácil porém, isso de importar parte em um formato e parte em outro que me atrapalha um pouco... :S


    João HEYTOR Kreitlow Pereira ( jhkpereira@gmail.com - http://www.joaoheytor.com ) Certified in ITIL V3 Foundation and a Microsoft Certified Professional (MCP, MCTS [Windows 7 / Vista / Server Virtualization :: Configuration ] & MCSA)

    quarta-feira, 22 de janeiro de 2014 11:24
  • Olá,

    Veja se um destes artigos ajudam:

    http://support.microsoft.com/kb/320473/pt-br

    http://curso-de-excel-mpr.blogspot.com.br/2011/10/convertendo-data-padrao-americano.html

    Atenciosamente,


    Edinaldo Oliveira

    Esse conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    ** Por favor, lembre-se de “Marcar como Resposta” as respostas que resolveram o seu problema. Essa é uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde. **

    quarta-feira, 22 de janeiro de 2014 11:50
  • Olá!

    Estou com o mesmo problema aqui. Já tentei de tudo e não consigo resolver.

    Se faço a importação manualmente dá tudo certo; mas se for trabalhar com macros vira essa bagunça.

    Realizando a gravação, os resultados saem conforme eu quero. Mas ao executar o comando...

    quinta-feira, 6 de fevereiro de 2014 17:16