全部版块 我的主页
论坛 数据科学与人工智能 数据分析与数据科学 Excel
4263 2
2011-10-06
百度了很久,也没找到符合我要求的.我主要想查函数ispmt的代码,我觉得这个程序设计有问题.
而excel帮助里也没有计算公式,像NPV,IRR这些都还有公式.所以很容易找到原理
这个函数在per参数设计上我觉得有问题,用它计算了一个等额本金 的按揭还贷款的问题,答案明显不对,
最明显的证据,用这个函数计算,最后一个月偿还的利息是0.这个应该是不合理的,本金还没偿清,怎么能不还利息呢.

所以 per应该从0计起, 取值范围应该到还款期限-1.

有知道这个函数公式的吗?有代码最好.谢谢
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

全部回复
2011-10-6 12:38:33
自己回一下  
在google上找到相关的问题
http://www.excelbanter.com/showthread.php?t=111711
我觉得和我的想法大致相当.不过ismpt和impt对应的还款方式不同.还是不能完全替代
希望大家发表自己的观点
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

2016-6-28 19:11:36
Sub lqxs()
Dim conn, Sql$, Arr, i&, d, Arr1, aa
Set d = CreateObject("Scripting.Dictionary")
On Error GoTo 100
Set conn = CreateObject("adodb.connection")
conn.Open "provider=microsoft.jet.oledb.4.0;extended properties=excel 8.0;data source=" & ThisWorkbook.Path & "\总库存.xls"
Sql = "select * from [kucun$]"
Sheet1.Activate
Arr = conn.Execute(Sql).getrows
For i = 0 To UBound(Arr, 2)
    If Not d.exists(Arr(1, i)) Then
        d(Arr(1, i)) = Arr(2, i) & "," & Arr(7, i) & "," & Arr(8, i) & "," & Arr(11, i)
    End If
Next
Arr1 = [a1].CurrentRegion
For i = 2 To UBound(Arr1)
    If d.exists(Arr1(i, 2)) Then
        aa = Split(d(Arr1(i, 2)), ",")
        Cells(i, 3) = aa(0)
        Cells(i, 5) = aa(1)
        Cells(i, 6) = aa(2)
        Cells(i, 7) = aa(3)
    End If
Next
GoTo 200
100:
MsgBox "没有此数据!"
200:
[a2].Select
conn.Close
Set conn = Nothing
End Sub
二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

相关推荐
栏目导航
热门文章
推荐文章

说点什么

分享

扫码加好友,拉您进群
各岗位、行业、专业交流群