|
|
|
|
|
Dicas
|
|
Visual Basic (Operações Matemáticas)
|
|
|
Título da Dica: Calcula Empréstimos e Define o Valor de Cada Prestação
|
|
|
|
Postada em 23/12/2003 por Josefh Hennyere
jhennyere@yahoo.com.br
Crie um formulário com um botão de Controle denominado Command e insira o seguinte código na prioridade "Ao Clicar":
Private Sub Command_Click()
Dim NL, TB, Fmt, FVal, PVal, APR, TotPmts, PayType, Payment, Msg, MakeChart, Period, P, I Const ENDPERIOD = 0, BEGINPERIOD = 1 ' Quando os pagamentos são feitos. NL = Chr(13) & Chr(10) ' Define a nova linha. TB = Chr(9) ' Define a tabulação. Fmt = "###,###,##0.00" ' Define o formato monetário. FVal = 0 ' Normalmente 0 para um empréstimo. PVal = InputBox("Quanto você quer pegar emprestado?") APR = InputBox("Qual é a taxa de porcentagem anual do seu empréstimo?") If APR > 1 Then APR = APR / 100 ' Certifica-se de que se trata do ' formulário apropriado. TotPmts = InputBox("Quantos pagamentos mensais você precisa fazer?") PayType = MsgBox("Você faz os pagamentos no fim do mês?", vbYesNo) If PayType = vbNo Then PayType = BEGINPERIOD Else PayType = ENDPERIOD Payment = Abs(-Pmt(APR / 12, TotPmts, PVal, FVal, PayType)) Msg = "O seu pagamento mensal é " & Format(Payment, Fmt) & ". " Msg = Msg & "Você gostaria de desdobrar o seu principal e" Msg = Msg & "os juros por período?" MakeChart = MsgBox(Msg, vbYesNo) ' Verifica se você deseja um gráfico. If MakeChart <> vbNo Then If TotPmts > 12 Then MsgBox "Somente o primeiro ano será mostrado." Msg = "Mês Pagamento Principal Juros" & NL For Period = 1 To TotPmts If Period > 12 Then Exit For ' Mostra somente os primeiros 12. P = PPmt(APR / 12, Period, TotPmts, -PVal, FVal, PayType) P = (Int((P + 0.005) * 100) / 100) ' Arredonda o principal. I = Payment - P I = (Int((I + 0.005) * 100) / 100) ' Arredonda os juros Msg = Msg & Period & TB & Format(Payment, Fmt) Msg = Msg & TB & Format(P, Fmt) & TB & Format(I, Fmt) & NL Next Period MsgBox Msg ' Exibe a tabela de amortização. End If
End Sub
É só testar!, vale à pena!
|
|
|
|
|