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


3 participantes

    [Resolvido]Importar dados do ficheiro .txt

    RuiWolf
    RuiWolf
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8
    Registrado : 07/10/2011

    [Resolvido]Importar dados do ficheiro .txt Empty [Resolvido]Importar dados do ficheiro .txt

    Mensagem  RuiWolf 10/5/2012, 18:09

    Caros amigos,

    Em primeiro quero dar os meus parabéns ao forum e a todos os participantes e agradecer toda a ajuda que me têm dado.

    Esta é a primeira vez que tenho necessidade de ajuda mais focalizada, pois desta vez não consigo encontrar a resposta aqui no forum.

    Tentei adaptar o exemplo do JPaulo, para importar dados de um ficheiro de texto, mas necessito que a tabela tenha vários campos, e o resultado foi um erro de "execução de SQL".

    Anexo um print do erro, se for necessário algo mais, por favor não hesitem.


    Anexos
    [Resolvido]Importar dados do ficheiro .txt AttachmentTeste.pdf
    Você não tem permissão para fazer download dos arquivos anexados.
    (170 Kb) Baixado 37 vez(es)


    Última edição por RuiWolf em 18/5/2012, 10:37, editado 3 vez(es)


    .................................................................................
    RuiWolf
    Lisboa, Portugal

    MaximoAccess
    O autor desta mensagem foi banido do fórum - Mostrar mensagem
    RuiWolf
    RuiWolf
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8
    Registrado : 07/10/2011

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  RuiWolf 11/5/2012, 16:58

    Obrigado acao pela resposta, segue o código que utilizei.

    Código:
    Option Compare Database
    Option Explicit
    Private Sub Comando86_Click()
       
        Call ImportaSemDelimitadores
       
    End Sub

    Public Sub ImportaSemDelimitadores()
    'By JPaulo ® Maximo Access
    Dim Delimitador As String
    Dim DB As Database
    Dim fnum As Integer
    Dim LinhaDoTexto, LinhaDoTextoTemp As String
    Dim InstrucaoSQL As String
    Dim Posicao As Integer
    Dim QtdDeRegistros As Long
    Dim ArquivoTexto As String
    Dim strBanco As Databases
    Dim strTabela As String

        ArquivoTexto = "I:\Gestão Intermodal\PTLEI\MarcacoesLeixoes.txt" 'caminho do arq de texto
        strTabela = "tabMarcacoesLeixoes" 'nome da tabela no banco
       
        Delimitador = vbTab 'defina aqui qual o delimitador que não quer importar
       
        If Delimitador = "<space>" Then Delimitador = " "
        If Delimitador = "<tab>" Then Delimitador = vbTab

        fnum = FreeFile
        On Error GoTo NoTextFile
        Open ArquivoTexto For Input As fnum

        On Error GoTo NoDatabase
        Set DB = CurrentDb
        On Error GoTo 0

        Do While Not EOF(fnum)
            Line Input #fnum, LinhaDoTexto
                   
              If Len(LinhaDoTexto) > 0 Then
              If Left(LinhaDoTexto, 4) Like "4530" Then
                LinhaDoTextoTemp = Mid(LinhaDoTexto, 11, 255)
                LinhaDoTexto = LinhaDoTextoTemp
              End If
                InstrucaoSQL = "INSERT INTO " & _
                    strTabela & " VALUES ("
                Do While Len(LinhaDoTexto) > 0
                    Posicao = InStr(LinhaDoTexto, Delimitador)
                    If Posicao = 0 Then
                        InstrucaoSQL = InstrucaoSQL & _
                            "'" & LinhaDoTexto & "', "
                        LinhaDoTexto = ""
                    Else
                        InstrucaoSQL = InstrucaoSQL & _
                            "'" & Left$(LinhaDoTexto, Posicao - 1) & _
                            "', "
                        LinhaDoTexto = Mid$(LinhaDoTexto, Posicao + Len(Delimitador))
                    End If
                Loop

                InstrucaoSQL = Left$(InstrucaoSQL, Len(InstrucaoSQL) - 2) & ")"

                On Error GoTo SQLError
                DB.Execute InstrucaoSQL
                On Error GoTo 0
                QtdDeRegistros = QtdDeRegistros + 1
           
            End If
        Loop

    'Aqui vai o código para excluir
    DB.Execute "Delete Nome From tabMarcacoesLeixoes"


        Close fnum
        DB.Close
        MsgBox "Inseridas " & Format$(QtdDeRegistros) & " Linhas"
        Exit Sub

    NoTextFile:
        MsgBox "Erro na abertura do Arquivo de Texto."
        Exit Sub

    NoDatabase:
        MsgBox "Erro na abertura do Banco."
        Close fnum
        Exit Sub

    SQLError:
        MsgBox "Erro na execusão do SQL '" & _
            InstrucaoSQL & "'"
        Close fnum
        DB.Close
        Exit Sub
    End Sub


    .................................................................................
    RuiWolf
    Lisboa, Portugal

    MaximoAccess
    O autor desta mensagem foi banido do fórum - Mostrar mensagem
    RuiWolf
    RuiWolf
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8
    Registrado : 07/10/2011

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  RuiWolf 13/5/2012, 22:13

    Obrigado pela dica, amanha já vou testar.


    .................................................................................
    RuiWolf
    Lisboa, Portugal

    MaximoAccess
    RuiWolf
    RuiWolf
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8
    Registrado : 07/10/2011

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  RuiWolf 14/5/2012, 10:45

    Bom dia,

    Mas a instrução SQL está neste trecho de código, corrige-me se eu estiver errado.



    InstrucaoSQL = "INSERT INTO " & _
    strTabela & " VALUES ("
    Do While Len(LinhaDoTexto) > 0
    Posicao = InStr(LinhaDoTexto, Delimitador)
    If Posicao = 0 Then
    InstrucaoSQL = InstrucaoSQL & _
    "'" & LinhaDoTexto & "', "
    LinhaDoTexto = ""
    Else
    InstrucaoSQL = InstrucaoSQL & _
    "'" & Left$(LinhaDoTexto, Posicao - 1) & _
    "', "


    Onde ele diz para inserir na tabela (strTabela) "As String" os valor maiores que 0 do ficheiro de texto.


    .................................................................................
    RuiWolf
    Lisboa, Portugal

    MaximoAccess
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  JPaulo 14/5/2012, 11:17

    Bom dia amigos;

    Peço desculpa a todos por ainda não ter visto este tópico.

    Aqui vai o simples;


    Para mais campos, terá 1º de definir o delimitador, por exemplo:

    No seu .txt, tem a seguinte informação:

    JPaulo;Rui Sousa;Alexandre Neves

    Isto representa 3 campos na sua tabela...

    Então no código tem de alterar:

    Onde está "Delimitador = vbTab"
    Passará a ser Delimitador = ";"

    Teste e retorne.






    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new Instruções SQL como utilizar...
    RuiWolf
    RuiWolf
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8
    Registrado : 07/10/2011

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  RuiWolf 14/5/2012, 11:48

    Obrigado pelo retorno, todavia não resulta na medida em que a separação dos dados é feita por um tab.

    Anexo parte da bd + txt, por forma a facilitar.


    Import_TXT_MultiCamp


    .................................................................................
    RuiWolf
    Lisboa, Portugal

    MaximoAccess
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  JPaulo 14/5/2012, 12:09

    Lamento;

    Com esse ficheiro, este código não funciona.

    Terá de ser um código, que faça um Replace dos espaços para delimitadores fixos, para indicar quais as colunas que estão vazias.

    Esperamos que alguma fera se atente e que tenha tempo disponível.



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new Instruções SQL como utilizar...
    O autor desta mensagem foi banido do fórum - Mostrar mensagem
    O autor desta mensagem foi banido do fórum - Mostrar mensagem
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  JPaulo 15/5/2012, 14:31

    Gostava de ver, mas esse Seven Zip pede password.


    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new Instruções SQL como utilizar...
    RuiWolf
    RuiWolf
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8
    Registrado : 07/10/2011

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  RuiWolf 15/5/2012, 16:10

    Boas,

    pois falta a pass Smile

    Mas só a possibilidade de estar resolvido este problema, já é uma luz Very Happy Very Happy


    .................................................................................
    RuiWolf
    Lisboa, Portugal

    MaximoAccess
    O autor desta mensagem foi banido do fórum - Mostrar mensagem
    JPaulo
    JPaulo
    Moderador
    Moderador


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 11016
    Registrado : 04/11/2009

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  JPaulo 17/5/2012, 20:08

    Perfeito, parabéns até mesmo pelo trabalho que deu.

    Nota 10.

    Só falta o retorno final do Rui e o Resolvido no tópico.



    .................................................................................
    Contribua com o maximoaccess nos links abaixo, ajude a melhorar este que é o seu site na NET.

    Pay-Pal R$ Aqui
    Pay-Pal € Aqui

    Ou ainda: Aqui (Novo)

    Sucesso e Bons Estudos
    Success and Good Studies

    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new Utilize o Sistema de Busca do Fórum...
    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new 102 Códigos VBA Gratuitos...
    [Resolvido]Importar dados do ficheiro .txt Folder_announce_new Instruções SQL como utilizar...
    RuiWolf
    RuiWolf
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8
    Registrado : 07/10/2011

    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  RuiWolf 18/5/2012, 10:33

    Bom dia,

    Peço desculpa pela demora na resposta, mas tive um problema com o meu pc que já está resolvido.

    Agradeço imenso a ajuda de todos, graças aos "experts" tenho o problema resolvido.


    Amigo acao, um muito obrigado especial por todo o trabalho, ficou 6 estrelas, está a funcionar na perfeição Smile

    Agora vou dar o tópico como resolvido.


    .................................................................................
    RuiWolf
    Lisboa, Portugal

    MaximoAccess
    O autor desta mensagem foi banido do fórum - Mostrar mensagem
    O autor desta mensagem foi banido do fórum - Mostrar mensagem

    Conteúdo patrocinado


    [Resolvido]Importar dados do ficheiro .txt Empty Re: [Resolvido]Importar dados do ficheiro .txt

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/4/2024, 23:59