MaximoAccess

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

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access


    [Resolvido]Importar dados do excel e inserir na tabela financeira

    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 22/2/2019, 13:28

    Bom dia a todos !

    Estou a utilizar uma função a qual o nosso amigo aqui do fórum AhTeixeira disponibilizou em um outro tópico que criei para realizar importações do excel.

    A mesma está 100% funcional.
    Estou com dificuldades de incluir nela o lançamento dos dados na tabela do financeiro.

    A estrutura dela é essa:
    [Resolvido]Importar dados do excel e inserir na tabela financeira Sem_tz15

    No processo de importação o intuito é :

    idcompra: o mesmo ta tabela principal
    vencimento: determinarei através de um campo data
    parcelas: 1 sempre
    pagamento: determinarei através de um campo data
    valorparcela: valor total da nota
    valorpago: valor total da nota
    formapgto: a prazo (2) sempre

    Estou deixando a base de dados para que possa ser analisada com as planilhas que utilizo no processo.

    Fico no aguardo de alguma luz.

    Meu muito obrigado.

    Abraços.
    Anexos
    [Resolvido]Importar dados do excel e inserir na tabela financeira AttachmentProjeto.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (1.2 Mb) Baixado 14 vez(es)
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  ahteixeira em 22/2/2019, 15:03

    Olá,

    Não compreendo a dúvida e não sei porque tem duas planilhas, qual a relação entre elas?
    Pode esplicar melhor o que pretende.

    Abraço
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 22/2/2019, 15:44

    Boa tarde !

    A planilha base eu uso pra inserir os produtos das notas que vem do outro sistema, no momento da importação, eu faço a verificação dos produtos por ela, se não contem na tabela de cadastro de produtos, adiciona. É uma espécie de ponte para a importação. Foi uma maneira que encontrei juntamente de um outro amigo aqui do fórum em um outro tópico para fazer essa verificação.

    A planilha residencial é a planilha exportada pelo outro sistema para realizar a importação dos dados principais e dos itens daquela nota.

    A ideia é inserir na tblparcelamento como informei na mensagem anterior:

    idcompra: o mesmo ta tabela principal
    vencimento: determinarei através de um campo data
    parcelas: 1 sempre
    pagamento: determinarei através de um campo data
    valorparcela: valor total da nota
    valorpago: valor total da nota
    formapgto: a prazo (2) sempre

    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  ahteixeira em 22/2/2019, 16:55

    Olá Thiago,

    Agora acho que já compreendi melhor.
    Creio ser possivel o que pretende na mesma função (Function fncImportarCSV())

    Agora vou sair, para a semana vejo se posso ajudar.

    Abraço
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 22/2/2019, 17:14

    Boa tarde meu caro !

    Acho que pode ser possível sim, inclusive tentei fazer o código direto nela e testei, porém os resultados não foram os esperados. Tentei de todas as maneiras mas não obtive sucesso.

    Fico no aguardo.

    Meu muito obrigado !

    Abraço.
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 25/2/2019, 15:47

    Boa tarde !!
    Alguma posição ?
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  ahteixeira em 25/2/2019, 16:43

    Olá, não está esquecido.

    Estive a verificar a modelagem de dados, vou ter que ver melhor com mais tempo por causa do "idcompra: o mesmo ta tabela principal" para não ficar muito demorado

    Abraço
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 25/2/2019, 17:04

    Boa tarde !

    Acredito que seja por causa dele que o código não esteja funcionando como esperado, como mostrei na mensagem privada.

    Deve ter alguma coisa ali no começo daquele código que está a inserir incorretamente.
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  ahteixeira em 25/2/2019, 17:32

    Olá,

    Será melhor repetir, porque não dou importância a mensagens com pedidos de ajuda.
    Limito-me a sugerir abertura de tópico.

    Portante será melhor explicar todos os detalhes novamente (eliminei msg privada)

    Abraço
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 25/2/2019, 17:45

    Boa tarde !

    Eu tinha alterado a função que você criou inserindo umas linhas de código a mais para eu testar:

    Código:
    Function fncImportarCSV()
    ' Álvaro Teixeira (ahteixeira) 2018 para MaximoAccess
    ' Importar CSV via LineImput separa cabeçalho das linhas
    Dim strLinha, xCliente, xNF As String
    Dim linha1, xCodigo As Double
    Dim arrLinha() As String
    Dim xproduto As String
    Dim xfornecedor As String

        'Pesquisa último código da Tbl_Compras
        xCodigo = Nz(DLast("[idCompra]", "tblcompras"), 0)
     
       
        'Ficheiro a ler para importar
        Open Application.CurrentProject.Path & "\vitaly.CSV" For Input As #1
       
        'Inicio leitura do txt linha a linha
        Do Until EOF(1)

            Line Input #1, strLinha  ' leitura da linha

            If Left(strLinha, 1) <> "S" And Mid(strLinha, 5, 8) <> "Total R$" Then
               
                linha1 = 1
                arrLinha = Split(strLinha, ";")
                xCliente = DLookup("idobra", "tblcadobra", "nome ='" & arrLinha(1) & "'")
                xfornecedor = DLookup("idfornecedor", "tblcadfornecedores", "[Empresa] = 'X'")
                xNF = Format(arrLinha(15), "####################")
           
            ElseIf Left(strLinha, 1) <> "S" And Mid(strLinha, 5, 8) = "Total R$" Then
               
                xCodigo = xCodigo + 1
           
            Else

                arrLinha = Split(strLinha, ";")
                If linha1 = 1 Then
                DoCmd.RunSQL "INSERT INTO tblcompras ( Obra, DataCompra, NotaFiscal, Fornecedor, dtlanc ) SELECT '" & xCliente & "',#" & Format(arrLinha(2), "mm/dd/yyyy") & "#, '" & xNF & "', " & xfornecedor & ", '" & Now() & "';"
                    linha1 = 0
                End If
                    xproduto = Nz(DLookup("idproduto", "tblcadproduto", "descricao = '" & arrLinha(4) & "'"), 0)
                    DoCmd.RunSQL "INSERT INTO Tblcomprasdet ( idcompra, Produto, Quantidade, ValorUnit,Desconto) SELECT " _
                            & xCodigo + 1 & ",'" & xproduto & "','" & arrLinha(5) & "','" & arrLinha(6) & "', 0;"
     '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' Início do código para inserir na tabela de parcelamento
                    Dim db As dao.Database
                    Dim rs, rs2 As Recordset
                   
                    Set db = CurrentDb()
                    Set rs = db.OpenRecordset("Select * from tblparcelamento")
                    Set rs2 = db.OpenRecordset("select * from cs_comprasdet where idcompra =" & xCodigo + 1 & "")  '''' consulta criada para tentativa de selecionar apenas as compras que estão sendo importadas
                   
                        rs.AddNew
                        rs("idcompra") = xCodigo
                        rs("dtvencimento") = Me.txtdata
                        rs("dtpagamento") = Me.txtdata
                        rs("parcelas") = 1
                        rs("valorparcela") = DSum("total", "cs_comprasdet")
                        rs("valorpago") = DSum("total", "cs_comprasdet")
                        rs("quitar") = -1
                        rs("formapgto") = 2
                        rs.Update
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' fim do código
            End If
       
        'Fim da leitura txt
        Loop

        'Fechar ficheiro
        Close #1
       
        MsgBox "Feito, Verifique tabelas.", vbInformation, ""

    o resultado foi esse:
    [Resolvido]Importar dados do excel e inserir na tabela financeira Untitl11
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 25/2/2019, 18:12

    Como mostra na tabela que está sendo inserido os dados

    Está inserindo uma linha pra cada produto que consta na nota (planilha residencial X)

    Por exemplo: se na nota X tem 3 produtos, na tabela parcelamento vão ter 3 linhas refentes ao mesmo IDcompra.

    O intuito da consulta criada no rs2 era somar o valor total das notas a serem importadas para ver se ao adicionar na tabela de parcelamento adicionava uma linha apenas com o total daquela nota, mas não funcionou.

    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  ahteixeira em 15/3/2019, 14:05

    Olá Thiago,

    Parece que a modelagem da tabela de dados não é a melhor para ficar fluido na importação.

    Para eu ter o idcompra para adicionar à tabela tblparcelamento na importação preciso de fazer a pesquisa à tabela tblcompras por cada registo.
    Poderiamos usar o numero da nota fiscal para o relacionamento das tabelas.

    Com base na imagem abaixo (consegue) fazer a correspondencia dos campos
    [Resolvido]Importar dados do excel e inserir na tabela financeira 052

    Abraço
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 15/3/2019, 14:10

    Bom dia meu caro !

    Mas pode ocorrer de haver números de notas fiscais iguais.
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  ahteixeira em 15/3/2019, 14:16

    Olá,

    Muito bem e qual a restante relação dos campos para adicionar.

    Abraço
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 15/3/2019, 14:18

    Bom dia !

    idcompra: o mesmo ta tabela principal
    vencimento: determinarei através de um campo data
    parcelas: 1 sempre
    pagamento: determinarei através de um campo data
    valorparcela: valor total da nota
    valorpago: valor total da nota
    formapgto: a prazo (2) sempre

    Seria isso ?
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  ahteixeira em 15/3/2019, 15:29

    Olá, veja se é isto:

    cld.pt/dl/download/3871046e-853a-4c29-87f4-f39c323375ef/ImportarCSV.zip

    Código utilizado:
    Código:
    'inico parcelamento
     xValor = Mid(strLinha, 14, InStr(strLinha, ";;;;;;;;;;;") - 14)
     DoCmd.RunSQL "INSERT INTO tblparcelamento ( idcompra, Parcelas, valorparcela, valorpago, formapgto) SELECT " _
     & xCodigo & ",1,'" & xValor & "','" & xValor & "', '2';"

    Abraço
    avatar
    thiagonsilvaa
    Avançado
    Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 268
    Registrado : 12/01/2017

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  thiagonsilvaa em 15/3/2019, 15:58

    Boa tarde meu caro !


    É exatamente isso, agora sim ficou show.

    Por essa importação eu vou eliminar uma rotina de trabalho manual imensa, automatizando todo o processo.

    Muito obrigado pela disponibilidade e cordialidade com o meu caso.

    Forte abraço.
    ahteixeira
    ahteixeira
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  ahteixeira em 15/3/2019, 16:02

    Olá Thiago,

    Fico feliz por ter ajudado, obrigado pelo retorno.

    Abraço

    Conteúdo patrocinado

    [Resolvido]Importar dados do excel e inserir na tabela financeira Empty Re: [Resolvido]Importar dados do excel e inserir na tabela financeira

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 26/5/2019, 14:37