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

    Importação de arquivo CSV apresentando erro

    avatar
    salomaojosealves.melo
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 8
    Registrado : 29/06/2015

    Importação de arquivo CSV apresentando erro Empty Importação de arquivo CSV apresentando erro

    Mensagem  salomaojosealves.melo em Ter 10 Nov 2020, 5:13 am

    Prezados, uma boa tarde.

    Tenho uma rotina, inclusive adaptada de exemplo colhido neste fórum, que utilizo para importar dados de um arquivo texto, extensão ".CSV". Abaixo segue o código VBA. Estava funcionando bem, contudo surgiu um problema: a base de dados que estou importando, vez uma vez outra, aparece um caractere especial que "confunde" a rotina, gerando um erro "Subscrito fora do Intervalo".

    Analisando a linha na qual surge o erro, verifiquei o caractere especial, que, ao passar o ponteiro do "mouse" sobre o mesmo apresenta a expressão SUB (^Z = 26 = 0x1a), conforme imagem anexada. Ou seja, a rotina quebra a linha até este caractere especial não lendo os demais dados, o que ocasiona o erro "subscrito fora do intervalo".

    Se possível, me deem uma ideia para tratar este problema.

    Agradecido antecipadamente pela atenção dispensada.


    Código VBA utilizado para fazer a importação dos dados.

    Código:
    Open CurrentProject.Path & "\Importacoes\SEF_ENTRADAS_DOC.csv" For Input As #1
       Set Db = DBEngine.Workspaces(0).Databases(0)
       Set rs = Db.OpenRecordset("SEF_ENTRADAS_DOC")
       
       Line Input #1, linha
       
       If Len(linha) > 0 Then
       Do While Not EOF(1)
       
       Line Input #1, linha
       
       anArray = Split(linha, ";")
           rs.AddNew
           rs(0) = Trim(anArray(0))
           rs(1) = Trim(anArray(1))
           rs(2) = Trim(anArray(2))
           rs(3) = Trim(anArray(3))
           rs(4) = Trim(anArray(4))
           rs(5) = Trim(anArray(5))
           rs(6) = Trim(anArray(6))
           rs(7) = Trim(anArray(7))
           rs(8) = Trim(anArray(8))
           rs(9) = Trim(anArray(9))
           rs(10) = Trim(anArray(10))
           rs(11) = Trim(anArray(11))
           rs(12) = Trim(anArray(12))
           rs(13) = Trim(anArray(13))
           rs(14) = Trim(anArray(14))
           rs(15) = Trim(anArray(15))
           rs(16) = Trim(anArray(16))
           rs(17) = Trim(anArray(17))
           rs(18) = Trim(anArray(18))
           rs(19) = Trim(anArray(19))
           rs(20) = Trim(anArray(20))
           rs(21) = Trim(anArray(21))
           
           rs.Update
           DblQtdRegistrosSEFDoc = DblQtdRegistrosSEFDoc + 1
       
       Loop
    Anexos
    Importação de arquivo CSV apresentando erro AttachmentImagem_dados.jpg
    Você não tem permissão para fazer download dos arquivos anexados.
    (83 Kb) Baixado 1 vez(es)
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 6954
    Registrado : 16/03/2013

    Importação de arquivo CSV apresentando erro Empty Re: Importação de arquivo CSV apresentando erro

    Mensagem  ahteixeira em Qua 11 Nov 2020, 12:41 pm

    Olá Salomao,

    Existe vários exemplos no fórum.
    Já tentou a "Busca" aqui do fórum, veja como fazer:
    https://www.maximoaccess.com/t1115-busca-no-forum-search

    Se mantiver a dúvida, talvez seja melhor partilhar base de dados simples e funcional do que tem para se testar.

    Abraço

      Data/hora atual: Ter 24 Nov 2020, 9:03 pm