MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

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

    [Resolvido]Ajuste código de Parcelamento

    Compartilhe

    colaboradorpa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 63
    Registrado : 16/07/2014

    [Resolvido]Ajuste código de Parcelamento

    Mensagem  colaboradorpa em Sab 06 Set 2014, 23:20

    Boa noite!

    Preciso da ajuda dos nobres colegas, pra fazer um ajuste em um código que peguei aqui no fórum, infelizmente não recordo o nome da pessoa que o criou, mas ficou excelente, diga-se de passagem.
    Esse código faz um parcelamento de despesas:

    Tenho os formulários:
    frm_Despesas
    Campo: Entrada       Tipo de dados: Sim/Não

    frm_DetalheDespesasSub
    Campo: Quitado      Tipo de dados: Sim/Não

    O que eu gostaria:
    Quando eu marcar o campo Entrada e clicar no botão btnCalcula , quero que marque a caixa de seleção do campo Quitado automaticamente, ou seja, caso a despesa seja inserida com uma entrada, a mesma vai ser dado baixa no ato do lançamento.

    Eis o código:


    Private Sub btnCalcula_Click()
       
    '   Define variáveis
       Dim VlParcela As Currency, Contador As Integer
       Dim DtVencimento As Date, DtAjuste As Date
       Dim bytIni As Byte, bytDias As Byte

    '   Verifica se todos os campos necessários ao cálculo estão preenchidos
       If Me.ValorDaDespesa > 0 And IsNull(Me.DtDespesa) = False And _
           Me.QtdParcelas > 0 And IsNull(Me.Intervalo) = False Then
           
    '   Recalcula campos do formulário
           Me.Recalc

    '   Apaga parcelamento anterior
           CurrentDb.Execute ("DELETE * FROM tbl_DetalheDespesas WHERE IdDaDespesa = " & Me.IdDaDespesa)
           
    '   Atualiza dados do sub formulário
           Me.frm_DetalheDespesasSub.Requery

    '   Define o valor da parcela
           VlParcela = Me.ValorDaDespesa / Me.QtdParcelas
           
    '   Inicializa data de vencimento
           DtVencimento = Me.DtDespesa

    '   Verifica se haverá parcela a ser paga no ato da venda (Entrada)
           If Me.Entrada Then

    '   Havendo, insere a primeira parcela na tabela e define o inicio do contador em 2
               CurrentDb.Execute ("INSERT INTO tbl_DetalheDespesas (IdDaDespesa,NumeroParcela,DtVenc,ValorDaParcela, DtPgto "preciso inserir aqui o campo Quitao") " & _
                   "VALUES (" & Me.IdDaDespesa & ",1,'" & DtVencimento & "','" & VlParcela & "',' " & DtVencimento & " ' "e aqui o valor que ele receberá")")
                 
               bytIni = 2
           Else

    '   Caso contrário, define o inicio do contador em 1
               bytIni = 1
           End If

    '   Executa o parcelamento
           For Contador = bytIni To Me.QtdParcelas

    '   Define o próximo vencimento
               DtVencimento = DtVencimento + Me.Intervalo
               DtAjuste = DtVencimento

    '   Ajusta vencimento para dia útil
               For bytDias = 1 To 7
                   Select Case DatePart("w", DtAjuste)
                       Case Is = 1
                           DtAjuste = DtAjuste + 1
                       Case Is = 7
                           DtAjuste = DtAjuste + 2
                   End Select
                   If ÉFeriado(DtAjuste) Then
                       DtAjuste = DtAjuste + 1
                   End If
               Next

    '   Inclui parcela na tabela
               CurrentDb.Execute ("INSERT INTO tbl_DetalheDespesas (IdDaDespesa,NumeroParcela,DtVenc,ValorDaParcela) " & _
                   "VALUES (" & Me.IdDaDespesa & "," & Contador & ",'" & DtAjuste & "','" & VlParcela & "')")
           
    '   Retorna ao contador
           Next Contador

    '   Finaliza o parcelamento
       End If
       
    '   Atualiza dados do sub formulário
       Me.frm_DetalheDespesasSub.Requery

    End Sub





    O ajuste que eu quero fazer, acredito que seria nesta linha de comando:

    '   Verifica se haverá parcela a ser paga no ato da venda (Entrada)
           If Me.Entrada Then

    '   Havendo, insere a primeira parcela na tabela e define o inicio do contador em 2
               CurrentDb.Execute ("INSERT INTO tbl_DetalheDespesas (IdDaDespesa,NumeroParcela,DtVenc,ValorDaParcela, DtPgto 'Inserir aqui o campo Quitado) " & _
                   "VALUES (" & Me.IdDaDespesa & ",1,'" & DtVencimento & "','" & VlParcela & "',' " & DtVencimento & " ' 'E aqui o valor que ele receberá)")

    Agradeço se puderem me ajudar.

    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: [Resolvido]Ajuste código de Parcelamento

    Mensagem  Alexandre Neves em Dom 07 Set 2014, 08:15

    Bom dia,
    O ajuste que eu quero fazer, acredito que seria nesta linha de comando:

    ' Verifica se haverá parcela a ser paga no ato da venda (Entrada)
    If Me.Entrada Then

    ' Havendo, insere a primeira parcela na tabela e define o inicio do contador em 2
    CurrentDb.Execute "INSERT INTO tbl_DetalheDespesas (IdDaDespesa,NumeroParcela,DtVenc,ValorDaParcela, DtPgto, Quitado) " & _
    "VALUES (" & Me.IdDaDespesa & ",1,'" & DtVencimento & "','" & VlParcela & "',' " & DtVencimento & "',ControloQuitado)"


    .................................................................................
    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

    colaboradorpa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 63
    Registrado : 16/07/2014

    Re: [Resolvido]Ajuste código de Parcelamento

    Mensagem  colaboradorpa em Dom 07 Set 2014, 15:36

    Bom dia!

    Alexandre, infelizmente não funcionou não... deu erro no código...
    Não estaria faltando alguma vírgula, parêntese ou sei lá o quê mais?

    Esqueci de dizer: Eu utilizo o office 2013.

    Agradeço a atenção.

    Alexandre Neves
    Moderador Global
    Moderador Global

    Respeito às Regras 100%

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

    Re: [Resolvido]Ajuste código de Parcelamento

    Mensagem  Alexandre Neves em Dom 07 Set 2014, 15:46

    Boa tarde,
    Se o campo é Sim/Não
    CurrentDb.Execute "INSERT INTO tbl_DetalheDespesas (IdDaDespesa,NumeroParcela,DtVenc,ValorDaParcela, DtPgto, Quitado) " & _
    "VALUES (" & Me.IdDaDespesa & ",1,'" & DtVencimento & "','" & VlParcela & "',' " & DtVencimento & "',True)"


    .................................................................................
    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

    colaboradorpa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 63
    Registrado : 16/07/2014

    Re: [Resolvido]Ajuste código de Parcelamento

    Mensagem  colaboradorpa em Dom 07 Set 2014, 15:57

    vou testar e já te retorno

    colaboradorpa
    Intermediário
    Intermediário

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 63
    Registrado : 16/07/2014

    Re: [Resolvido]Ajuste código de Parcelamento

    Mensagem  colaboradorpa em Dom 07 Set 2014, 16:06

    Obrigado Alexandre Neves

    Resolvido

      Data/hora atual: Qui 08 Dez 2016, 23:57