vba - 如何使用资本和利率计算贷款成本?Vba
问题描述
我正在以开发人员的身份进行实习,并进行了艰苦的练习。我有一个贷款文本,有 3 个空白字段,贷款、资本和利率。我已经创建了它,它看起来像这样:
Private Sub l_jahre_Click()
End Sub
Private Sub txt_abtrag_Change()
CalculateFormular
End Sub
Private Sub txt_darlehen_Change()
CalculateFormular
End Sub
Private Sub txt_zinssatz_Change()
CalculateFormular
End Sub
Private Sub CalculateFormular()
If (validate()) Then
Debug.Print "Success"
End If
End Sub
Private Function validate() As Boolean
validate = True
On Error GoTo x
a = CDbl(txt_abtrag.Value) + CDbl(txt_darlehen.Value) + CDbl(txt_zinssatz.Value)
Exit Function
x:
validate = False
End Function
Public Sub test2()
'Debug.Print txt_zinssatz.Value
l_zinsen.Caption = "inf."
End Sub
不要介意它们的价值xd
现在我需要用资本和利率计算贷款成本。
我需要把它填满,它看起来像这样。
Public Function GetTotalCost(ByVal capital As Double, ByVal rate As Double) As Double
GetTotalCost = 0
End Function
Public Function GetRentTime(ByVal capital As Double, ByVal rate As Double, ByVal monthPay As Double) As Double
GetRentTime = 0
End Function
请不要说完整的代码或完整的答案我只是需要一些帮助来理解以及我应该使用什么方法。谢谢您的帮助。
解决方案
下面的每个财务公式都根据其他财务参数解决了一个财务参数(PV、FV、PMT、NPER),(pmt*nper)+pv+fv = 0
如果比率为 0,则使用,pv*((1+rate)^nper)+pmt*(1+rate*type)*((1+rate)^nper-1)/rate+fv = 0
否则,其中:
• pv 是贷款或投资的现值,代表一系列未来付款的现值。例如,当您借钱时,您所欠的金额就是贷方的现值。
• fv 是未来价值,或最后一次还款后贷款或投资的现金余额。
• rate 是每期的利率。
• nper 是贷款或投资期限内的总还款期数。
• pmt 是在每个期间支付的固定分期付款。分期付款通常包括支付本金和利息的部分,但可能不包括贷款费用等。如果您借款,这是负数,因为它代表您将支付的钱(即负现金流)。
• type 是数字 0 或 1,表示分期付款的时间。0 表示在期末付款,1 表示在期初付款。同样,一些贷款根据期初未偿金额收取利息,而另一些贷款则根据期末未偿金额收取利息。
求解未来值,公式为:
fv=-if(rate=0,pmt*nper+pv,(pv*((1+rate)^nper)+pmt*(1+rate*type)*((1+rate)^nper-1)/rate))
求解现值,公式为:
pv=-if(rate=0,pmt*nper+fv,(fv+pmt*(1+rate*type)*((1+rate)^nper-1)/rate)/((1+rate)^nper))
求解支付值,公式为:
pmt=-if(rate=0,(pv+fv)/nper,(pv*((1+rate)^nper)+fv)/((1+rate*type)*((1+rate)^nper-1)/rate))
求解周期数,公式为:
nper=-if(rate=0,(pv+fv)/pmt,(log(1+(pv+pmt*type)/pmt*rate)-log(1+(fv+pmt*type)/pmt*rate))/log(1+rate))
求解利率,公式为:
rate=(fv/pv)^(1/nper)-1
提供 pmt 为 0。否则,您只能通过迭代求解利率(例如使用上述公式之一)。
推荐阅读
- c# - 在 Unity C# 中,我试图在光线投射命中的地方生成一个立方体
- spring-boot - Pushy APNS http2 协议 - io.netty.util.concurrent.PromiseCombiner 错误中没有初始化方法
- python - Jupyter notebook 停止打印输出
- python - 按条件过滤行并使用 python pandas 从数据框中选择多列
- javascript - 使用 domtoimage.toPng 为 pdf 页面内的两个 div 导出 pdf
- haskell - Haskell ForkIO 将线程数限制为某个值
- c++ - ROS 奇怪的转化行为
- javascript - 使用javascript基于交互式ggplot为过滤器创建选择
- amazon-web-services - 确认登录请求中的“用户会话无效” - AWS Cognito
- javascript - 映射对象的对象并推送非重复