FAZER CALCULO DE JURO COMPOSTO COM DIAS
imagine que peguei emprestado R$ 12.000,00 com juros ao mês de 6% (juro composto)... e paguei depois de 38 dias...
O que quero fazer no VB é pegar os 12 mil e calcular os 30 dias + 8 dias com juros de 6%
Uso VB 6 e DAO
O que quero fazer no VB é pegar os 12 mil e calcular os 30 dias + 8 dias com juros de 6%
Uso VB 6 e DAO
A fórmula é está:
Vf = vi(1+i)^n
^ Simbolo de exponenciação no Visual Basic
Vf=Montante
Vi = Valor Inicial
i = Taxa de juros ao mês /100
n = Número de meses
imagine que o valor total está na txtTOTAL e que o Juros(porcentagem) esta no txtPorc e a quantidade de dias está no txtDias.... como ficaria essa sua formula?
Tente isso:
Espero ter ajudado
dias = txtDIas
meses = CInt(dias / 30)
diasRest = CInt(dias Mod 30)
ValorTotal = txtTotal
TaxaJuros = txtPorc
ValorComJuros = ValorTotal * ((1 + (TaxaJuros / 100)) ^ meses)
If diasRest > 0 Then
ValorComJuros = ValorComJuros * ((1 + (TaxaJuros / 100)) ^ (diasRest / 30))
End If
Debug.Print ValorComJuros
Espero ter ajudado
tente assim:
txtValor_a_Pagar = txtTOTAL + ((txtTOTAL / 100) * ((txtPorc / 30) * txtDias))
txtValor_a_Pagar = txtTOTAL + ((txtTOTAL / 100) * ((txtPorc / 30) * txtDias))
CALCULO DE JUROS:
Dim CalcDias As Variant 'Declara a variável CalcDias'
Dim Total As Variant 'Declara a variável Total'
Valor = (Valor) 'Valor do documento'
Juros = (Juros) 'Taxa de Juros do documento'
CalcDias = (Vencimento) - (Data) 'Calcula a quantidade de dias'
Total = (Resultado) 'Resultado da operação'
Total = (((Valor * Juros) * (CalcDias / 30)) + Valor)
'Multiplica valor com a taxa de juros com a quantidade de dias,'
'divide por 30 e soma ao valor do documento'
Resultado = Total
ESPERO TER AJUDADO
Dim CalcDias As Variant 'Declara a variável CalcDias'
Dim Total As Variant 'Declara a variável Total'
Valor = (Valor) 'Valor do documento'
Juros = (Juros) 'Taxa de Juros do documento'
CalcDias = (Vencimento) - (Data) 'Calcula a quantidade de dias'
Total = (Resultado) 'Resultado da operação'
Total = (((Valor * Juros) * (CalcDias / 30)) + Valor)
'Multiplica valor com a taxa de juros com a quantidade de dias,'
'divide por 30 e soma ao valor do documento'
Resultado = Total
ESPERO TER AJUDADO
txt-size=4]"Será que se o site não pontuasse, teria tanta gente preocupada em desmembrar as respostas deste jeito"[/txt-size]
Bom. Não quero entrar na disputa, mas precisei me logar pra reparar um erro.
A fórmula apresentada pelo Leopoldo está correta, mas ela pede que n (número de perÃodos) esteja na mesma unidade de medida de i (taxa de juros em % por perÃodo). Lá estão expressos corretamente "juros ao mês" e "número de meses", mas no caso apresentado pelo Webier, há um pequeno incremento de 8 dias. Não vale fazer a conta [1+(8/30)] para descobrir esse "quebradinho" de mês e jogar na fórmula. é necessário fazer uma continha simples, de equivalência de taxas, para passar "i" de % ao mês para % ao dia, e aà sim utilizar os 38 dias na fórmula. Assim:
iq = taxa que eu quero
it = taxa que eu tenho
q = número de dias em que quero expressar a taxa
t = número de dias em que a taxa que tenho está expressa
---------------------------------------
iq = {[(1+(it/100))^(q/t)]-1}*100
---------------------------------------
Então, se temos it=6 ao mês (30 dias) e quero iq para 1 dia:
it = 6% a.m. q = 1 t = 30
iq = {[(1+(6/100))^(1/30)]-1}*100 = [(1,06^0,0333)-1]*100 = (1,001944-1)*100 = 0,1944% ao dia
Veja que:
6^1 = 6 % a.m.
1,001944^30 = 6% provando que a equivalência está correta
Então, usando Leopoldo:
Vf = vi(1+i)^n
Vf = 12000(1,001944)^38 = 12919,10
Vamos fazer pelo jeito errado:
Vf = 12000(1+6/100)^(1+8/30) = 12000(1,06^1,26666) = 12000*1,0765 = 12919,19
Uau! A diferença foi de apenas 9 centavos! Mas é diferente, certo? Estamos lidando com equações exponenciais, e fomos beneficiados pela taxa baixa de juros. Essa diferença tende a aumentar conforme o número de perÃodos e a taxa de juros aumenta. E, se o seu trabalho é profissional, não custa nada seguir a boa e velha matemática financeira. Mais detalhes na minha série de artigos "MATEMATICA FINANCEIRA" que está hospedada aqui no VBMania. Tem lá até como usar o módulo Financial que vem com o VBA e que lhes poupa de montar fórmula na unha.
A fórmula apresentada pelo Leopoldo está correta, mas ela pede que n (número de perÃodos) esteja na mesma unidade de medida de i (taxa de juros em % por perÃodo). Lá estão expressos corretamente "juros ao mês" e "número de meses", mas no caso apresentado pelo Webier, há um pequeno incremento de 8 dias. Não vale fazer a conta [1+(8/30)] para descobrir esse "quebradinho" de mês e jogar na fórmula. é necessário fazer uma continha simples, de equivalência de taxas, para passar "i" de % ao mês para % ao dia, e aà sim utilizar os 38 dias na fórmula. Assim:
iq = taxa que eu quero
it = taxa que eu tenho
q = número de dias em que quero expressar a taxa
t = número de dias em que a taxa que tenho está expressa
---------------------------------------
iq = {[(1+(it/100))^(q/t)]-1}*100
---------------------------------------
Então, se temos it=6 ao mês (30 dias) e quero iq para 1 dia:
it = 6% a.m. q = 1 t = 30
iq = {[(1+(6/100))^(1/30)]-1}*100 = [(1,06^0,0333)-1]*100 = (1,001944-1)*100 = 0,1944% ao dia
Veja que:
6^1 = 6 % a.m.
1,001944^30 = 6% provando que a equivalência está correta
Então, usando Leopoldo:
Vf = vi(1+i)^n
Vf = 12000(1,001944)^38 = 12919,10
Vamos fazer pelo jeito errado:
Vf = 12000(1+6/100)^(1+8/30) = 12000(1,06^1,26666) = 12000*1,0765 = 12919,19
Uau! A diferença foi de apenas 9 centavos! Mas é diferente, certo? Estamos lidando com equações exponenciais, e fomos beneficiados pela taxa baixa de juros. Essa diferença tende a aumentar conforme o número de perÃodos e a taxa de juros aumenta. E, se o seu trabalho é profissional, não custa nada seguir a boa e velha matemática financeira. Mais detalhes na minha série de artigos "MATEMATICA FINANCEIRA" que está hospedada aqui no VBMania. Tem lá até como usar o módulo Financial que vem com o VBA e que lhes poupa de montar fórmula na unha.
Max, o Fiscal.... ai mandou bem
Desculpe minha burrice, mas teria como vc fazer essa mesma forma que vc criou com os textbox que citei lá emcima?
Grato
Desculpe minha burrice, mas teria como vc fazer essa mesma forma que vc criou com os textbox que citei lá emcima?
Grato
Imagine um botão "calcula"
Private Sub Calcula_Click()
Dim Montante,Captal,Juros,Meses As Single
Captal = Val(txtTotal.Text)
Juros = Val(txtPorc.Text)/100
Meses = Val(txtDias)/30
Montante = Capital*(1+Juros)^Meses
'a variavel "Montante" tem o valor final do calculo
'agora vc pode guardar este valor onde quiser
End Sub
Veja como ficaria o porcesso interno do computador
Captial = Val("12000")
Capital = 12000
Juros = Val("6")/100
Juros = 6/100
Juros = 0.06
Meses = Val("38")/30
Meses = 38/30
Meses= 1.26666666666#
Montante = Capital*(1+Juiros)^Meses
Montante=12000*(1+0.06)^1.2666666666#
Montante=12000*1,07659930718549579#
Montante=12919,19
Pronto Calculo feito!
Private Sub Calcula_Click()
Dim Montante,Captal,Juros,Meses As Single
Captal = Val(txtTotal.Text)
Juros = Val(txtPorc.Text)/100
Meses = Val(txtDias)/30
Montante = Capital*(1+Juros)^Meses
'a variavel "Montante" tem o valor final do calculo
'agora vc pode guardar este valor onde quiser
End Sub
Veja como ficaria o porcesso interno do computador
Captial = Val("12000")
Capital = 12000
Juros = Val("6")/100
Juros = 6/100
Juros = 0.06
Meses = Val("38")/30
Meses = 38/30
Meses= 1.26666666666#
Montante = Capital*(1+Juiros)^Meses
Montante=12000*(1+0.06)^1.2666666666#
Montante=12000*1,07659930718549579#
Montante=12919,19
Pronto Calculo feito!
Eu digitei na txtTotal=12000, na txtPorc=6 e na txtDias=38 e fiz os exemplos abaixos
[txt-color=#008000]fiz o que o LEANDRO_BUENO disse:
Private Sub cmdCalcular_Click()
Dim CalcDias As Variant
Dim Total As Variant
Valor = txtTotal.Text
Juros = txtPorc.Text
CalcDias = txtDias.Text
'Total = (RESULTADO)
Total = (((Valor * Juros) * (CalcDias / 30)) + Valor)
txtResultado = Total
End Sub
.... o resultado deu: 103200[/txt-color]
[txt-color=#0000ff]Fiz o que o JEAN JEDSON disse:
Private Sub cmdCalcular_Click()
txtResultado = txtTotal + ((txtTotal / 100) * ((txtPorc / 30) * txtDias))
end sub
.... o resultado deu: 12912[/txt-color]
[txt-color=#ff0000]Fiz o que o HAILTON.FERRAZ disse:
Private Sub cmdCalcular_Click()
Dim Montante, Captal, Juros, Meses As Single
Captal = Val(txtTotal.Text)
Juros = Val(txtPorc.Text) / 100
Meses = Val(txtDias) / 30
Montante = Capital * (1 + Juros) ^ Meses
txtResultado = Montante
end sub
.... o resultado deu: 0(zero)[/txt-color]
o que o MAX, O FISCAL, LEOPOLDOARJ e CERBERO eu não conseguir entender.
Alguem pode me dar um HELP ?
[txt-color=#008000]fiz o que o LEANDRO_BUENO disse:
Private Sub cmdCalcular_Click()
Dim CalcDias As Variant
Dim Total As Variant
Valor = txtTotal.Text
Juros = txtPorc.Text
CalcDias = txtDias.Text
'Total = (RESULTADO)
Total = (((Valor * Juros) * (CalcDias / 30)) + Valor)
txtResultado = Total
End Sub
.... o resultado deu: 103200[/txt-color]
[txt-color=#0000ff]Fiz o que o JEAN JEDSON disse:
Private Sub cmdCalcular_Click()
txtResultado = txtTotal + ((txtTotal / 100) * ((txtPorc / 30) * txtDias))
end sub
.... o resultado deu: 12912[/txt-color]
[txt-color=#ff0000]Fiz o que o HAILTON.FERRAZ disse:
Private Sub cmdCalcular_Click()
Dim Montante, Captal, Juros, Meses As Single
Captal = Val(txtTotal.Text)
Juros = Val(txtPorc.Text) / 100
Meses = Val(txtDias) / 30
Montante = Capital * (1 + Juros) ^ Meses
txtResultado = Montante
end sub
.... o resultado deu: 0(zero)[/txt-color]
o que o MAX, O FISCAL, LEOPOLDOARJ e CERBERO eu não conseguir entender.
Alguem pode me dar um HELP ?
Tópico encerrado , respostas não são mais permitidas