Bom dia a todos.
Procurei assunto semelhante no fórum mas não encontrei. Sendo assim, posto aqui a minha dúvida:
Preciso criar uma instrução para cadastrar parcelas de uma compra a prazo, incrementando o número da parcela e a data de vencimento. Com o código que desenvolvi o VBA funciona de forma parcial, ou seja, cria os registros de acordo com o número de parcelas e as numera corretamente, entratanto, está zerando as datas de vencimento, retornando 30/12/1899. Se alguém puder me orientar a corrigir o problema ficarei muito agradecido.
Abaixo segue o código, para análise.
Option Compare Database
Option Explicit
Private Sub Teste_Click()
Dim valor As Currency
Dim Prestação As Integer
Dim Parcela As Integer
Dim Prazo As Integer
Dim i As Integer
Dim Seq As Long
Dim StrSQL As String
Dim Dtcompra As Date
Dim Dtvcto As Date
Dim Intervalo As String
valor = 200
Prazo = 7
Seq = 3
Parcela = 0
i = DCount("[Seq]", "[Teste]", "[Seq] =" & Seq)
Prestação = FormatNumber(valor / Prazo, 2)
Intervalo = "m"
Dtcompra = DateSerial(2012, 1, 5)
If i < Prazo Then
For i = 1 To Prazo
Parcela = Parcela + 1
Dtvcto = DateAdd(Intervalo, Parcela, Dtcompra)
StrSQL = "INSERT INTO Teste (Seq, Parcela, Vencimento, Valor) SELECT " & Seq & " AS Seq," & Parcela & " AS Parcela," & Dtvcto & " AS Vencimento," & Prestação & " AS Valor"
CurrentDb.Execute StrSQL
Next
Else
Exit Sub
End If
End Sub
Procurei assunto semelhante no fórum mas não encontrei. Sendo assim, posto aqui a minha dúvida:
Preciso criar uma instrução para cadastrar parcelas de uma compra a prazo, incrementando o número da parcela e a data de vencimento. Com o código que desenvolvi o VBA funciona de forma parcial, ou seja, cria os registros de acordo com o número de parcelas e as numera corretamente, entratanto, está zerando as datas de vencimento, retornando 30/12/1899. Se alguém puder me orientar a corrigir o problema ficarei muito agradecido.
Abaixo segue o código, para análise.
Option Compare Database
Option Explicit
Private Sub Teste_Click()
Dim valor As Currency
Dim Prestação As Integer
Dim Parcela As Integer
Dim Prazo As Integer
Dim i As Integer
Dim Seq As Long
Dim StrSQL As String
Dim Dtcompra As Date
Dim Dtvcto As Date
Dim Intervalo As String
valor = 200
Prazo = 7
Seq = 3
Parcela = 0
i = DCount("[Seq]", "[Teste]", "[Seq] =" & Seq)
Prestação = FormatNumber(valor / Prazo, 2)
Intervalo = "m"
Dtcompra = DateSerial(2012, 1, 5)
If i < Prazo Then
For i = 1 To Prazo
Parcela = Parcela + 1
Dtvcto = DateAdd(Intervalo, Parcela, Dtcompra)
StrSQL = "INSERT INTO Teste (Seq, Parcela, Vencimento, Valor) SELECT " & Seq & " AS Seq," & Parcela & " AS Parcela," & Dtvcto & " AS Vencimento," & Prestação & " AS Valor"
CurrentDb.Execute StrSQL
Next
Else
Exit Sub
End If
End Sub