MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

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

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

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


2 participantes

    Importação de arquivos TXT

    avatar
    elsouza
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 6
    Registrado : 22/05/2015

    Importação de arquivos TXT Empty Importação de arquivos TXT

    Mensagem  elsouza 23/8/2016, 20:58

    Boa tarde!

    Necessito criar um JOB que ao executar o banco eu importe todos os TXTs que estão em uma determinada pasta, para uma tabela no meu banco de dados.
    Peguei uma solução pesquisando aqui no Grupo e fiz as alterações necessárias.
    No momento de executar está dando a mensagem "a variavel do objeto ou a variavel do bloco with não foi definida"

    Poderiam me dar um help?  Estou enviando o código abaixo:
    ------------------------------------------------------------------------------------------------------------------
    Option Compare Database
    'requer referencia Microsoft Scripting Runtime (ativei)
    Dim fso As FileSystemObject
    Dim fld As folder


    Function IMPORTAR_BASE_TOTAL(PastaImportar)
    Dim sFol As String, sFile As String, _
     nDirs As Long, nFiles As Long
     Dim tFld As folder, tFil As File, FileName As String
     
    On Error GoTo IMPORTAR_BASE_TOTAL_Err

     sFol = "C:\Users\elianasouza\Documents\Projeto_Leitura\BUNGE\OK\"
     sFile = "*.txt"
     
     Set fld = fso.GetFolder(sFol)
     FileName = Dir(fso.BuildPath(fld.Path, sFile), vbNormal Or _
                    vbHidden Or vbSystem Or vbReadOnly)

     If Len(FileName) > 0 Then
         
         While Len(FileName) <> 0
     
            nFiles = nFiles + 1
                     MsgBox fso.BuildPath(fld.Path, FileName) 'msg ficheiro, depois pode-se retirar
                     DoCmd.TransferText acImportFixed, "Maquinas_TXT", "MaquinasTXT", fso.BuildPath(fld.Path, FileName), False, ""
            FileName = Dir()  ' Get next file
                                    DoEvents
         Wend
                       
            MsgBox ("Processados  " & nFiles & "  ficheiro(s).")
        Else
            'Call LocalizaArquivos
            Exit Function
        End If

    IMPORTAR_BASE_TOTAL_Exit:
      Exit Function

    IMPORTAR_BASE_TOTAL_Err:
      MsgBox Error$
      Resume IMPORTAR_BASE_TOTAL_Exit

    End Function

    No código que peguei não tinha nada referente a "LocalizaArquivos" que está chamando acima, por isso comentei a linha.

    Agradeço se puderem me dar um help.
    Eliana Souza
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7919
    Registrado : 15/03/2013

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  Alvaro Teixeira 23/8/2016, 21:34

    Olá Eliana Souza, Bem-Vinda ao fórum MaximoAccess.
    Acho que o código que postou está com erro de concepção, tem o tópico original?

    Por vezes com uma busca, encontramos o que pretendemos, veja como fazer:
    https://www.maximoaccess.com/t1115-busca-no-forum-search

    Veja se este ajuda:
    https://www.maximoaccess.com/t24141-resolvidoimportar-varios-ficheiros-txt-para-uma-so-tabela-adicionando-o-nome-do-ficheiro-a-um-campo
    Abraço
    avatar
    elsouza
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 6
    Registrado : 22/05/2015

    Importação de arquivos TXT Empty Importação de arquivos TXT

    Mensagem  elsouza 24/8/2016, 13:39

    Bom dia!

    Esse link que você me passou foi justamente o código que utilizei antes da parte do colocar o nome do arquivo em um campo da tabela.

    Estou enviando em anexo o código original em anexo.

    Atenciosamente
    Eliana Souza
    Anexos
    Importação de arquivos TXT AttachmentImportar_TXT.docx
    Você não tem permissão para fazer download dos arquivos anexados.
    (16 Kb) Baixado 13 vez(es)
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7919
    Registrado : 15/03/2013

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  Alvaro Teixeira 24/8/2016, 14:00

    Olá Eliana Souza,
    Hoje reparei que era o mesmo.
    Pode postar um ou dois ficheiros txt de amostragem e a base de dados com a tabela que pretende receber os dados.
    No aguardo.
    Abraço
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7919
    Registrado : 15/03/2013

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  Alvaro Teixeira 24/8/2016, 14:39

    Olá Eliana Souza,
    Será dificil sem o formato do TXT para compreender o mais adequado.

    No entanto teste código abaixo:
    Código:
    Option Compare Database
    'requer referencia Microsoft Scripting Runtime
    Dim fso As New FileSystemObject
    Dim fld As folder


    Function IMPORTAR_TXTs(PastaImportar)
    '------------------------------------------------------------
    ' IMPORTAR FICHEIROS TXT
    ' Álvaro Teixeira (ahteixeira) 2016 - maximoaccess
    '------------------------------------------------------------
                
    Dim sFol As String, sFile As String, strLinha As String, _
       linha As Double, nDirs As Long, nFiles As Long
       Dim tFld As folder, tFil As File, FileName As String
      
    On Error GoTo IMPORTAR_TXTs_Err

        sFol = PastaImportar
        'sFol = "C:\Users\elianasouza\Documents\Projeto_Leitura\BUNGE\OK\"
       sFile = "*.txt"
      
       Set fld = fso.GetFolder(sFol)
       FileName = Dir(fso.BuildPath(fld.Path, sFile), vbNormal Or _
                      vbHidden Or vbSystem Or vbReadOnly)

       If Len(FileName) > 0 Then
          
           While Len(FileName) <> 0
              'contador de ficheiros
              nFiles = nFiles + 1

              'Importar ficheiro
              
              DoCmd.TransferText acImportDelim, , "Maquinas_TXT", fso.BuildPath(fld.Path, FileName), True, ""
              
              'obter ptóximo ficheiro
              FileName = Dir()
              DoEvents
           Wend

              MsgBox ("Processados  " & nFiles & "  ficheiro(s).")
          Else
              MsgBox ("Não foram encontrados ficheiros.")
              Exit Function
          End If


    IMPORTAR_TXTs_Exit:
        Exit Function

    IMPORTAR_TXTs_Err:
        MsgBox Error$
        Resume IMPORTAR_TXTs_Exit

    End Function

    Quanto à questão que tinha colocado:
    Código:
    Call IMPORTAR_TXTs(Me.txtCaminhoImportar)
    Ao chamar a função IMPORTAR_TXTs tem o argumento para informar o caminho, no caso assim vai ser o caminho que estiver no campo txtCaminhoImportar.

    Também poderia fazer a chamada da função assim, passando o caminho diretamente, veja:
    Código:
    Call IMPORTAR_TXTs("C:\Users\elianasouza\Documents\Projeto_Leitura\BUNGE\OK\")

    Espero ter ajudado.
    Se a dúvida se mantiver, será melhor postar ficheiro de TXT de descrever como pretende importar (adicionar sempre à mesma tabela??)
    Abraço
    avatar
    elsouza
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 6
    Registrado : 22/05/2015

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  elsouza 24/8/2016, 15:47

    Olá, bom dia!

    Muito obrigada!

    O processo é o seguinte:  tenho diversos arquivos descarregados pelo HyperTerminal que vem com extensão .HT.
    Partindo do principio que consiga convertê-los em TXT ou EXCELL, estes arquivos estarão disponíveis em uma pasta e eu teria que rodar um robozinho em access que pega estes arquivos, importa para uma única tabela e só depois fazer o programa para desmembrar essas informações que são referentes ao consumo das maquinas e grava-las nas tabelas corretas. Depois de processados os arquivos seriam movidos de pasta para uma nova descarga.

    Basicamente é isso, estou enviando o banco e os arquivos, no banco eu salvei a especificação.

    Atenciosamente
    Eliana Souza
    Anexos
    Importação de arquivos TXT AttachmentTEXTI.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (34 Kb) Baixado 10 vez(es)
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7919
    Registrado : 15/03/2013

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  Alvaro Teixeira 24/8/2016, 23:54

    Olá, obrigado pelo retorno.
    Irei verificar a possibilidade, não será fácil dado a estrutura do ficheiro.

    Abraço
    avatar
    elsouza
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 6
    Registrado : 22/05/2015

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  elsouza 25/8/2016, 12:03

    Bom dia!

    Consegui importar os TXTs com o ultimo código que me enviou, muito obrigada!!! Agora vou desenvolver um programa que desmembra esse tabelão em tabelas que eu possa subir para o SQL e trabalhar com elas nos relatórios.

    Isso é uma parte importante mas existem outras como por exemplo:

    Os arquivos serão descarregados com a extensão .ht, preciso de uma macro ou algo parecido, para fazer o que eu faço manualmente que é: Abrir Com (Excel) e Salvar Como (TXT), você acha isso possível?

    Sou grata por qualquer ideia / sugestão que puder me enviar quanto a trabalhar com esse tipo de arquivo.

    Abraço
    Eliana Souza


    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7919
    Registrado : 15/03/2013

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  Alvaro Teixeira 25/8/2016, 12:23

    Olá Eliana Souza,
    Obrigado pelo retorno, conseguiu importar, no entanto deve aparecer com aqueles caracteres estranhos na tabela.

    Talvez seja possivel, quando abre no excel usa o assistente de conversao?
    O que faz concretamente e como fica?

    1) Pode postar o mesmo ficheiro antes e depois da abertura com o Excel para podermos comparar?
    2) Pode postar base de dados que está a receber a importação, para verificar como está ficar na tabela?

    Abraço
    avatar
    elsouza
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 6
    Registrado : 22/05/2015

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  elsouza 25/8/2016, 13:26

    Bom dia!!!

    Recebo o arquivo com a extensão (.ht) não consigo abrir este arquivo normalmente sem associar a algum programa, neste caso posso colocar como default Abrir Com (excel) ou Notepad.  Abrindo pelo Notepad e salvando como txt fica estranho e ele cria espaços entre os caracteres.
    Neste caso optei por Abrir Com (Microsoft Excel) e salvar como (txt, separado por tabulações)

    Segue um DOC que montei que representa essa estrutura.

    Abraço

    Eliana Souza
    Anexos
    Importação de arquivos TXT AttachmentMaximo.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (229 Kb) Baixado 12 vez(es)
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7919
    Registrado : 15/03/2013

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  Alvaro Teixeira 29/8/2016, 16:47

    Olá Eliana Souza,
    Estive a verificar e não vejo como fazer via VBA a conversão do Excel.
    Não sei se outro colega poderá ajudar.

    Creio que o ficheiro está a ser criado por um dispositivo ligado.
    Se é o caso, já ponderou comunicar diretamente com o despositivo para obter a informação.

    Fica alguns links para ver se ajuda:
    https://www.maximoaccess.com/t8624-resolvido-capturar-dados-atraves-da-porta-serial
    http://www.macoratti.net/vbserial.htm   (VB mas poderá ser adaptado)
    http://www.mrexcel.com/forum/excel-questions/488335-receive-data-com-port.html   (VBA Excel)
    Abraço
    avatar
    elsouza
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Feminino
    Localização : Brasil
    Mensagens : 6
    Registrado : 22/05/2015

    Importação de arquivos TXT Empty Importação de arquivos TXT

    Mensagem  elsouza 30/8/2016, 12:20

    Bom dia!

    Realmente é um tópico bem chatinho,
    Encontrei algumas dicas nos links que me enviou no ultimo email.
    Vou fazer alguns testes.

    Muito obrigada pela sua ajuda e empenho.

    Abs
    Eliana Souza
    Alvaro Teixeira
    Alvaro Teixeira
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7919
    Registrado : 15/03/2013

    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  Alvaro Teixeira 30/8/2016, 12:28

    Olá, obrigado pelo retorno.
    Se é um equipamento, acho que será esse o caminho.
    Fica o link de um HyperTerminal OpenSource caso seja util para testes:
    https://sourceforge.net/projects/hypeterminal/
    Boa sorte e ficamos aguardar feedback.
    Abraço

    Conteúdo patrocinado


    Importação de arquivos TXT Empty Re: Importação de arquivos TXT

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 19/4/2024, 12:48