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]Importação de Texto

    dasilvabrito
    dasilvabrito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 18/08/2013

    [Resolvido]Importação de Texto Empty [Resolvido]Importação de Texto

    Mensagem  dasilvabrito 26/11/2013, 14:25

    Bom dia, amigos, estou precisando de uma força sua.
    É o seguinte, o que tinha de ler sobre importação de texto eu já li, e num intendi muito bem, já até tentei aplicar alguns dos exemplos e não consegui.
    Mas vamos ao que interessa.

    eu tenho um arquivo de texto padrão, que vai em anexo, e dele eu gostaria apenas de extrair os dados

    NUMERO DO CONTRATO..........: 12.3537.110.0000000/29
    CLIENTE............: 000.905.382/15-0   WILLIAN DA SILVA BRITO
    NUMERO DO EXTRATO .: 023-0
    VALOR EXPECTATIVA .:                   0,46

    para os campos
    CONTRATO
    CLIENTE
    EXTRATO
    VALOR EXPECTATIVA

    da tabela de meu BD Access

    Veja se pode me ajudar.

    Obrigado desde já
    Anexos
    [Resolvido]Importação de Texto AttachmentSIAPX.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (20 Kb) Baixado 28 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  Convidado 26/11/2013, 15:57

    Boas colega, cite a tabela e grife no exemplo o texto que deseja importar e em qual campo da tabela o colocar..

    Cumprimentos.
    dasilvabrito
    dasilvabrito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 18/08/2013

    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  dasilvabrito 26/11/2013, 16:37

    Piloto,

    No novo anexo estão grifados os dados

    * está indicando a linha do valor a ser capturado
    "" está indicando o valor que vai ser capturado

    lembrando que não é padrão do texto conter * e "", que aparecem neste momento apenas delimitando para demonstração

    a tabela é a siapi

    Desejo extrair os dados

    NUMERO DO CONTRATO..........: 12.3537.110.0000000/29
    CLIENTE............: 000.905.382/15-0 WILLIAN DA SILVA BRITO
    NUMERO DO EXTRATO .: 023-0
    VALOR EXPECTATIVA .: 0,46

    para os campos

    CONTRATO
    CLIENTE
    EXTRATO
    VALOR EXPECTATIVA

    Me mantenho a disposição!
    Anexos
    [Resolvido]Importação de Texto AttachmentSIAPX.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (2 Kb) Baixado 12 vez(es)
    avatar
    Convidado
    Convidado


    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  Convidado 26/11/2013, 17:34

    Mas envie tambem o texto original

    Cumprimentos
    dasilvabrito
    dasilvabrito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 18/08/2013

    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  dasilvabrito 26/11/2013, 17:44

    O texto original está dentro do arquivo anterior.

    Mas vai em anexo novamente.
    Anexos
    [Resolvido]Importação de Texto AttachmentSIAPX.txt
    Você não tem permissão para fazer download dos arquivos anexados.
    (6 Kb) Baixado 21 vez(es)
    dasilvabrito
    dasilvabrito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 18/08/2013

    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  dasilvabrito 29/11/2013, 18:37

    Amigo Piloto,

    Sem querer incomodar mais já incomodando... Você teve tempo de verificar esse projeto?

    Saudações...
    Very Happy 
    avatar
    Convidado
    Convidado


    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  Convidado 29/11/2013, 21:01

    Façamos assim, Amanhã pela manha verei isto pra ti.. Tive problemas esta semana e fiquei impossibilita de ver isto pra ti.

    Cumprimentos
    avatar
    Convidado
    Convidado


    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  Convidado 4/12/2013, 14:47

    as linha em brancos representadas pela numeração em vermelho serão sempre da mesma quantidade em qualquer extrato?

    PRODUCAO                     SISTEMA DE APLICAÇÕES                   26/11/2013
     CAIXA-SIAPX               DADOS GERAIS DO CONTRATO - I        APXM0201 12:02:14
     -------------------------------------------------------------------------------
    *NUMERO DO CONTRATO..........: "12.3537.110.0000000/29"                          
     MODALIDADE...: 000 - NORMAL                                                   
    *CLIENTE............: "000.905.382/15-0   WILLIAN DA SILVA BRITO"                
     FORMA DE COBRANÇA .: CONSIGNACAO - AVERBACAO FOLHA                            
     CARTEIRA DO CLIENTE: FC01 - ESPECIAL FC01                                     
     CONTA PARA CREDITO......: 3537.001.00020000.0 PV COBRANÇA....: 3537           
     CONTA PARA DEBITO.......:                     PV DE RENOVAÇÃO:                
     VALOR DO CONTRATO ......:           11.000,00 CET-MENSAL:           1,36 %    
     VALOR INICIAL CONTRATO..:           11.014,19 CET-ANUAL.:          17,81 %    
     VALOR DA GARANTIA.......:                                                     
     VALOR LIQUIDO CONTRATO..:           10.635,06                                 
     NAT TAXA DE JUROS.......: DIFERENCIADA                                        
     1                                                                              
     NAT SEGURO DE VIDA .....: ISENTO                                              
     DATA VENC.PROX.EXTRATO..: 20/10/2013                                          
     1                                                                              
     2                                                                              
     3                                                                              
     4  
                                                                                
      CONTINUA DET CET  RETORNA TAXAS    GARANTIAS
      AVERBAÇÃO CADASTRO EXTRATO                 ENCERRA 
     1                                                                              
     2                                                                              
     3                                                                              
     4                                                                              
     5                                                                              
     6                                                                              
     7                                                                              
     8    
                                                                              
     PRODUCAO                     SISTEMA DE APLICAÇÕES                   26/11/2013
     CAIXA-SIAPX                   CONTEUDO DO EXTRATO             APXM0303 12:02:29
     -------------------------------------------------------------------------------
     NUMERO DO CONTRATO : 12.3537.110.0000000/29                                   
    *NUMERO DO EXTRATO .: "023-0"                  CONVENENTE....: 00001             
     CONTA PARA CREDITO.: 3537.001.00020000-0    CONTA P/DEBITO: 0000.000.00000000-0
     FORMA DE COBRANÇA .: 2 - CONSIGNACAO - AVERBACAO FOLHA                        
                                                                                   
     DATA VENCIMENTO ...: 20/09/2013             DATA RECEBIMENTO : 20/09/2013     
     DATA VALIDADE .....: 19/11/2013             DATA MOVIMENTO ..: 20/09/2013     
     DATA EMISSAO ......: 07/09/2013             PV MOVIMENTO ....: 3537           
     TIPO EXTRATO ......: AUTOMATICO                                               
     TRANSACAO .........: EXT AUT                                                  
                                                                                   
     SITUACAO EXTRATO ..: PG                                                       
                                                                                   
    *VALOR EXPECTATIVA .:                   "0,46"                                   
     VALOR PAGO ........:                   0,46                                   
                                                                                   
     MOV.SIAPX : 20/09/2013 DESCONTO EM FOLHA          /                           
     -------------------------------------------------------------------------------
     - 2-PROXIMA TELA ==> MOVIMENTOS DO EXTRATO                                    
      - CONTINUA           - GERAR BOLETO         - OCORRENCIAS
       - RETORNA                       

    Cumprimentos
    dasilvabrito
    dasilvabrito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 18/08/2013

    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  dasilvabrito 4/12/2013, 14:49

    Sim meu amigo, é um padrão
    dasilvabrito
    dasilvabrito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 18/08/2013

    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  dasilvabrito 4/12/2013, 15:01

    eu já tenho esse código,

    Código:
    Private Sub Comando0_Click()
    Dim linha As String
    Dim Contrato As String
    Dim Cliente As String
    Dim Extrato As String
    Dim Valor As String


    Open "C:\Importação\SIAPI.txt" For Input As #1

    Line Input #1, linha
       
    Do While Not (EOF(1))
        If (Mid(linha, 2, 19) = "NUMERO DO CONTRATO.") Then
            Contrato = Mid(linha, 32, 22)
        End If
       
        If (Mid(linha, 2, 7) = "CLIENTE") Then
            Cliente = Trim(Mid(linha, 42, 30))
        End If
       
        If (Mid(linha, 2, 17) = "NUMERO DO EXTRATO") Then
            Extrato = Mid(linha, 23, 5)
        End If
       
        If (Mid(linha, 2, 17) = "VALOR EXPECTATIVA") Then
            Valor = Trim(Mid(linha, 23, 22))
        End If
       
        Line Input #1, linha

    Loop

    MsgBox "Contrato: " & Contrato & " - Cliente: " & Cliente & " - Extrato: " & Extrato & " - Valor: " & Valor

    Close #1


    End Sub
    Agora gostaria de saber como que eu jogo esses dados para uma tabela...
    avatar
    Convidado
    Convidado


    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  Convidado 4/12/2013, 15:57

    Crie um módulo e o nomeie de mdlProcuraArquivo neste cole o código a seguir:

    Option Compare Database
    Option Explicit

    Private Declare Function GetOpenFileName Lib "comdlg32.dll" Alias _
             "GetOpenFileNameA" (pOpenfilename As OPENFILENAME) As Long

        Private Type OPENFILENAME
             lStructSize As Long
             hwndOwner As Long
             hInstance As Long
             lpstrFilter As String
             lpstrCustomFilter As String
             nMaxCustFilter As Long
             nFilterIndex As Long
             lpstrFile As String
             nMaxFile As Long
             lpstrFileTitle As String
             nMaxFileTitle As Long
             lpstrInitialDir As String
             lpstrTitle As String
             Flags As Long
             nFileOffset As Integer
             nFileExtension As Integer
             lpstrDefExt As String
             lCustData As Long
             lpfnHook As Long
             lpTemplateName As String
        End Type
     
    Public Function LocalizarArquivo(strDirIni As String, strTitulo As String, strFiltro As String)
    Dim OpenFile As OPENFILENAME
    Dim lReturn As Long, Pos As Integer
    On Error Resume Next
    OpenFile.lStructSize = Len(OpenFile)
    OpenFile.lpstrFilter = strFiltro
    OpenFile.nFilterIndex = 1
    OpenFile.lpstrFile = String(257, 0)
    OpenFile.nMaxFile = Len(OpenFile.lpstrFile) - 1
    OpenFile.lpstrFileTitle = OpenFile.lpstrFile
    OpenFile.nMaxFileTitle = OpenFile.nMaxFile
    OpenFile.lpstrInitialDir = strDirIni
    OpenFile.lpstrTitle = strTitulo
    OpenFile.Flags = 0
    lReturn = GetOpenFileName(OpenFile)
        If lReturn = 0 Then
            LocalizarArquivo = ""
        Else
            Pos = InStr(1, OpenFile.lpstrFile, Chr(0))
            LocalizarArquivo = Left(OpenFile.lpstrFile, Pos - 1)
        End If
    End Function




    No botão do formulário:

    Option Compare Database
    Option Explicit
    Dim StrArquivo      As String

    Private Sub Comando12_Click()
    On Error Resume Next
    Dim Caminho As String, StrCaminho As String
    Dim Titulo As String, filtro As String
    filtro = "Arquivos de Retorno (*.txy)" & Chr(0) & "*.txt" & Chr(0)
    Titulo = "Selecione o arquivo de texto..."
    '---------------------------------------------------------------
    'Envia para pasta específica do banco confome seleção no quadro
    '---------------------------------------------------------------
    Caminho = CurrentProject.Path
    Caminho = LocalizarArquivo(Caminho, Titulo, filtro)
    StrCaminho = Caminho
    StrArquivo = Mid(Caminho, InStrRev(Caminho, "\") + 1)
    '---------------------------------------
    'Executa a função de importação do texto
    '---------------------------------------
    Call ImportaTxt(StrCaminho)
    End Sub

    Function ImportaTxt(Caminho As String)
    Dim rs As DAO.Recordset
    Dim fnum            As Integer
    Dim LinhaDoTexto    As String
    Dim ArquivoTexto    As String
    Dim nCount          As Long
    Dim nLinha          As Integer
    Dim StrSQL          As String
    Dim CaminhoCopia    As String

    '---------------------------------
    'Variáveis para comportar os dados
    '---------------------------------
    Dim Contrato            As Variant
    Dim Cliente             As Variant
    Dim Extrato             As Variant
    Dim ValorExpec          As Variant
    '=================================

    '---------------------------------------------------
    'Carrega a variável com o SQL da tabela tblRetorno
    '---------------------------------------------------
    StrSQL = "SELECT * FROM siapi"
    '---------------------------------------------------
    'Carrego o recordset com a SQL
    '---------------------------------------------------
    Set rs = CurrentDb.OpenRecordset(StrSQL)
    '---------------------------------------------------
    'Carrego a variácel com o caminho do arquivo texto
    '---------------------------------------------------
    ArquivoTexto = Caminho
    '-------------------------------------------------------------
    'Variável para representar o número da linha do arquivo texto
    '-------------------------------------------------------------
    nLinha = 0
       
        fnum = FreeFile
        '--------------------
        'Abre o arquivo texto
        '--------------------
        Open ArquivoTexto For Input As fnum
        '-------------------------
        'Realiza loop pelo arquivo
        '-------------------------
        Do While Not EOF(fnum)
            '------------------------------------------------------------
            'Aplica à variável o valor de 1, incrementando a cada loop
            '------------------------------------------------------------
            nLinha = nLinha + 1
            Line Input #fnum, LinhaDoTexto
                    '---------------------------------------------------------
                    'Verifico a numeração da linha para extrair as informaçòes
                    'Utiliza-se as funções LTrim e RTrin para excluir espaços
                    'em branco a esquerda e direita
                    '---------------------------------------------------------
                    If nLinha = 4 Then
                        '--------
                        'Contrato
                        '--------
                        Contrato = LTrim(RTrim(Mid(LinhaDoTexto, 32, Len(LinhaDoTexto))))
                    ElseIf nLinha = 6 Then
                        '--------
                        'Cliente
                        '--------
                        Cliente = LTrim(RTrim(Mid(LinhaDoTexto, 22, Len(LinhaDoTexto))))
                    ElseIf nLinha = 37 Then
                        '--------
                        'Extrato
                        '--------
                        Extrato = LTrim(RTrim(Mid(LinhaDoTexto, 22, 10)))
                    ElseIf nLinha = 49 Then
                        '-----------
                        'ValorExpec
                        '-----------
                        ValorExpec = LTrim(RTrim(Mid(LinhaDoTexto, 22, Len(LinhaDoTexto))))
                    End If
        '----------------------------------------------
        'Loop da instrução >> Do While Not EOF(fnum) <<
        '----------------------------------------------
        Loop

    'Adiciona os registros na tabela

    '-------------------------------
    'Adiciona os registros na tabela
    '-------------------------------
        rs.AddNew
            rs(1) = Contrato
            rs(2) = Cliente
            rs(3) = Extrato
            rs(4) = ValorExpec
        rs.Update

    '-------------
    'Executa cópia
    '-------------
    'FileCopy StrCaminho, CaminhoCopia
    '-------------------------
    'Deleta o arquivo original
    '-------------------------
    'Kill StrCaminho

    '------------------------------------------------
    'Mesagem de operação realizada
    '------------------------------------------------
    MsgBox "Dados importados", vbInformation, "IMPORTAÇAO EFETUADA"

    End Function


    Cumprimentos.
    dasilvabrito
    dasilvabrito
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 39
    Registrado : 18/08/2013

    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  dasilvabrito 4/12/2013, 16:41

    Resolvidissimo... Piloto, obrigado mesmo...
    Vou passar a ser um colaborador na manutenção deste Fórum.
    avatar
    Convidado
    Convidado


    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  Convidado 4/12/2013, 20:53

    Opa, que ótima notícia!!!
    Toda ajuda é bem vinda.. Até porque todos que aqui ajudam como eu dispende do tempo e talento ajudando gratuitamente
    Tudo que aprendi foi através do Fórum e por isso nada mais justo que eu retribua.

    O Fórum agradece o Retorno.
    avatar
    misaelfurtado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 17/07/2011

    [Resolvido]Importação de Texto Empty Disponibilizar o Anexo

    Mensagem  misaelfurtado 30/5/2014, 02:59

    Boa noite!
    Poderia disponibilizar o anexo por favor, tenho uma situação parecida pra fazer e não consegui fazer o exemplo.

    Obrigado.
    avatar
    Convidado
    Convidado


    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  Convidado 4/6/2014, 00:18

    Ei-lo

    Cumprimentos.
    avatar
    misaelfurtado
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 17/07/2011

    [Resolvido]Importação de Texto Empty Obrigado

    Mensagem  misaelfurtado 4/6/2014, 03:12

    Obrigado por disponibilizar o anexo.

    Conteúdo patrocinado


    [Resolvido]Importação de Texto Empty Re: [Resolvido]Importação de Texto

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 11:24