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

    [Resolvido]Importar txt com duas linha para o mesmo registro

    avatar
    washytonn
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 295
    Registrado : 13/01/2012

    [Resolvido]Importar txt com duas linha para o mesmo registro Empty Importar txt com duas linha para o mesmo registro

    Mensagem  washytonn 25/9/2012, 18:11

    quero fazer o seguinte:

    no meu txt casa registro tem a duas linhas, a linha1 e a linha2, quero que ao importar para o banco de dados as duas linas fiquem no mesmo registro.

    se alguem puder me ajudar serei muito grato.
    uso o access 2007

    estou usando esse código
    -----------------------------------

    Option Compare Database

    Private Sub Btnimportar_Click()
    On Error GoTo TrataErro

    Dim DB As DAO.Database
    Dim RS As DAO.Recordset
    Dim Linha As String


    If Len(Me.txtNomeArq & vbNullString) = 0 Then ' Testa se txtNomeArq contém alguma coisa
    MsgBox "Informe o nome do arquivo a ser importado", vbExclamation + vbOKOnly, "Vazio"
    Me.txtNomeArq.SetFocus
    Exit Sub
    End If
    If Len(Dir(Me.txtNomeArq)) = 0 Then ' Testa a existência do arquivo
    MsgBox "O arquivo não existe!!!", vbCritical + vbOKOnly, "Erro"
    Me.txtNomeArq.SetFocus
    Exit Sub
    End If

    Open Me.txtNomeArq For Input As #1 ' Abre o arquivo a ser importado

    Set DB = CurrentDb
    Set RS = DB.OpenRecordset("tabela1")

    While Not EOF(1)
    Line Input #1, Linha ' Lê uma linha do arquivo texto
    If Left$(Linha, 1) = "1" Then
    With RS
    .AddNew
    !nome = Mid$(Linha, 2, 11)
    !telefone = Mid$(Linha, 23, 12)
    !bairro = Mid$(Linha, 31, 8)
    .Update
    End With
    End If
    If Left$(Linha, 1) = "2" Then
    With RS
    .AddNew
    !endereço = Mid$(Linha, 2, 11)
    !n = Mid$(Linha, 23, 12)
    .Update
    End With
    End If
    Wend

    Saida:
    Close
    Set RS = Nothing
    Set DB = Nothing
    Exit Sub

    TrataErro:
    MsgBox Err.Description, vbExclamation + vbOKOnly, "Erro: " & CStr(Err.Number)
    #If DESENV Then ' Compilação condicional - Em desenvolvimento
    Stop
    Resume
    #End If
    Resume Saida

    End Sub
    ----------------------------------------------------------
    avatar
    washytonn
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 295
    Registrado : 13/01/2012

    [Resolvido]Importar txt com duas linha para o mesmo registro Empty Re: [Resolvido]Importar txt com duas linha para o mesmo registro

    Mensagem  washytonn 29/9/2012, 22:05

    algum amigo do forum pode dar uma olhanda pra mim, por favor...
    avatar
    washytonn
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 295
    Registrado : 13/01/2012

    [Resolvido]Importar txt com duas linha para o mesmo registro Empty Re: [Resolvido]Importar txt com duas linha para o mesmo registro

    Mensagem  washytonn 29/9/2012, 22:06

    algum amigo do forum pode dar uma olhanda pra mim, por favor...
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8496
    Registrado : 05/11/2009

    [Resolvido]Importar txt com duas linha para o mesmo registro Empty Re: [Resolvido]Importar txt com duas linha para o mesmo registro

    Mensagem  Alexandre Neves 30/9/2012, 10:30

    Bom dia, washytonn
    Pelo código que colocou, parece-me que tem as linhas 1,2,1,2,1,2...
    Utilize
    dim strNome as string,strTel as string,strBairro as string
    strAImportar=""
    While Not EOF(1)
    Line Input #1, Linha ' Lê uma linha do arquivo texto
    If Left$(Linha, 1) = "1" Then
    strnome = Mid$(Linha, 2, 11)
    strtel = Mid$(Linha, 23, 12)
    strbairro = Mid$(Linha, 31, Cool
    ElseIf Left$(Linha, 1) = "2" Then
    With RS
    .AddNew
    !nome =strnome
    !telefone = strtel
    !bairro = strbairro
    !n = Mid$(Linha, 23, 12)
    .Update
    End With
    End If
    Wend


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    washytonn
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 295
    Registrado : 13/01/2012

    [Resolvido]Importar txt com duas linha para o mesmo registro Empty Re: [Resolvido]Importar txt com duas linha para o mesmo registro

    Mensagem  washytonn 30/9/2012, 15:20

    Alexandre Neves, valeu cara, deu certissimo, cara faz tempo que procuro esse código, faz muito tempo mesmo... quando achei o que postei era metade do caminho, mas o que você me mandou é perfeito.

    valeu mesmo...

    EU AMO ESSE FORUM...

    Conteúdo patrocinado


    [Resolvido]Importar txt com duas linha para o mesmo registro Empty Re: [Resolvido]Importar txt com duas linha para o mesmo registro

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/11/2024, 01:13