MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

Obrigado

Administração do MaximoAccess

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Importar arquivo TXT.

    XPTOS
    XPTOS
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 566
    Registrado : 20/01/2014

    Importar arquivo TXT. Empty Importar arquivo TXT.

    Mensagem  XPTOS em 5/2/2020, 18:35

    Amigos, boa tarde!

    Estou tentando importar um arquivo txt sem delimitador, apenas com tabulação.

    Tento importar nome do cliente e outros campos, mas não está dando certo, porque a quantidade de caracter entre cada nome é diferente e os campos não estão em uma posição fixa.

    Alguém pode me auxiliar?

    Segue exemplo: https://www.dropbox.com/s/09av06v19m1whl7/Importar%20TXT.rar?dl=0

    Código:
    Dim db As DAO.Database, rs As DAO.Recordset
    Dim Arquivo As Integer
    Dim CaminhoArquivo As String
    Dim TextoArquivo As String
    Dim TextoProximaLinha As String
    Dim ContadorLinha As Long

    'Configura a leitura do arquivo
    Arquivo = FreeFile
    CaminhoArquivo = "C:\Users\WAGOMES\Desktop\Importar TXT\producao_112019.txt"

    'Abre o arquivo para leitura
    Open CaminhoArquivo For Input As Arquivo
    ContadorLinha = 1
    'Lê o conteúdo do arquivo linha a linha
    Set rs = CurrentDb.OpenRecordset("Recebido") 'é mais simples

        Do While Not EOF(Arquivo)
            Line Input #Arquivo, TextoProximaLinha
            TextoProximaLinha = TextoProximaLinha & vbCrLf
            TextoArquivo = TextoArquivo & TextoProximaLinha
        On Error Resume Next
            rs.AddNew
            rs!nomeBeneficiario = Mid(TextoProximaLinha, 46, 22)
            rs!numeroCarteira = Mid(TextoProximaLinha, 30, 13)
            rs!senhaAutorizacao = Mid(TextoProximaLinha, 8, 8)
            rs!dataHoraInternacao = Mid(TextoProximaLinha, 17, 10)
            rs.Update
        Loop

      'Coloca na janela de verificação imediata
        MsgBox TextoArquivo
     
        'Fecha o arquivo
        Close Arquivo


    .................................................................................
    Grato,
    avatar
    renpv
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 318
    Registrado : 12/01/2015

    Importar arquivo TXT. Empty Re: Importar arquivo TXT.

    Mensagem  renpv em 6/2/2020, 00:39

    Seu problema não está no código, está no TXT. Nem tem delimitador nem largura fixa nos campos. Parece ter sido convertido de PDF pra TXT.
    XPTOS
    XPTOS
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 566
    Registrado : 20/01/2014

    Importar arquivo TXT. Empty Re: Importar arquivo TXT.

    Mensagem  XPTOS em 6/2/2020, 01:03

    Justamente,

    Ele foi convertido de PDF pra TXT e tem apenas tabulações.

    Como não consegui importar PDF para tabela access, resolvi converter para importar.


    .................................................................................
    Grato,

      Data/hora atual: 11/8/2020, 13:35