# 储蓄利息计算扩展 **Repository Path**: import_0/chuxulixijisuankuozhan ## Basic Information - **Project Name**: 储蓄利息计算扩展 - **Description**: EXCEL/WPS扩展 利用WPS/EXCEL进行储蓄本息计算并生成详细步骤清单 - **Primary Language**: C++ - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 12 - **Forks**: 0 - **Created**: 2017-04-27 - **Last Updated**: 2022-11-22 ## Categories & Tags **Categories**: excel-utils **Tags**: None ## README 答:点击新建文件,将文件命名为xx/yy.py,即表示xx文件夹下的yy.py文件> :pencil: # **个人储蓄利息计算扩展** **程序的错疏BUG,敬请指出 ** ![输入图片说明](https://gitee.com/uploads/images/2017/1016/152602_696a7698_1266722.png "jxr.png") **将ls.txt文件与 ls.dll 文件放在一起** (DLL文件可重命名,只需在VBA中也同样修改如:wls_date.dll) ls.dll + ls.txt + 利息计算2.xlsm ( **只需这三个文件** ) 这三个文件在《test》目录中 将两个ls.*文件放在同一目录下,并在 利息计算2.xlsm 的VBA中修改ls.dll的实际地址 ![输入图片说明](https://gitee.com/uploads/images/2017/1016/153330_304ada6d_1266722.png "all.png") test文件夹中的ls.txt只含工行的历年个人储蓄利率表(最近央行放开了利率),其它银行的历年利率表需自行维护 (工行的利率表可通过test文件夹中的 lsupdate_mul.py PY脚本爬取,税率只能通过ls.txt手动调整) 除了利税表,还需关注有关银行的利息计算方式是否相同( **本算法以工行为依据** ) 此处的个人活期存储也是按整存整取的方式设计 活期利息计算因手头资料有限,也难以测试,应谨慎使用。 :fa-paper-plane-o: **EXCEL/wps电子表格中需在VDE窗口重设DLL文件在你电脑中的具体位置(下图中的红线及涂黑处)** ![使用演示](https://gitee.com/uploads/images/2017/1016/153005_ba4f798e_1266722.gif "演示.gif") :fa-paper-plane-o: ![修改DLL文件的完整路径](https://gitee.com/uploads/images/2017/1016/153307_75affda0_1266722.png "VBE.png") :fa-paper-plane-o: **收集的一些资料** 算头不算尾,计算利息时,存款天数一律算头不算尾,即从存入日起算至取款前一天止(活期计息日除外); 对年、对月、对日计算,各种定期存款的到期日均以对年、对月、对日为准。即自存入日至次年同月同日为一对年, 存入日至下月同一日为对月;若超过了当月最大天数,以当月月末为到期日 定期储蓄到期日,比如遇例假不办公,可以提前一日支取,视同到期计算利息,手续同提前支取办理 2005/9/21对活期结息方式进行了调整: 按年结息改为按季结息(参见银发[2005]129号) 活期目前是每季度末月的20日结息一次(各行的计息日可能不同),结转的利息在下个季度就会产生复利 人民币业务的利率换算公式为:日利率(‰)= 年利率(%)÷360 月利率(‰)= 年利率(%)÷12 活期的日利率也是除以360,虽然调整后存期是按实际天数计算 定期期满时结息.如果有自动转存,本息合并转为下一笔新定期的本金:没有自动转存,本息合并转为活期的本金 储蓄存款利息计算时,本金以“元”为起息点,元以下的角、分不计息;利息的金额算至分位,分位以下四舍五入; 分段计息算至厘位,合计利息后分以下四舍五入 :fa-paper-plane-o: **中国人民银行关于人民币存贷款计结息问题的通知 (银发[2005]129号)** http://www.srgjj.com/news_view.asp?id=578 第三.(四)条:同时,银行可选择将计息期全部化为实际天数计算利息,即每年为365天(闰年366天),每月为当月公历实际天数, 计息公式为:利息=本金×实际天数×日利率。 :fa-paper-plane-o: **中国工商银行关于修改部分存、贷款计结息规则和计息方法的公告** 根据《中国人民银行关于人民币存贷款计结息问题的通知》(银发[2005]129号)规定,中国工商银行将修改部分存、贷款计结息规则和计息方法,现通告如下: 一、从2005年9月21日起,个人活期存款按季结息,按结息日挂牌活期利率计息,每季末月的20日为结息日。未到结息日清户时,按清户日挂牌公 告的活期利率计息到清户前一日止。第一次执行个人活期存款按季结息的时间为2005年12月20日。2005年12月21日,本行将向个人客户计付 2005年7月1日至2005年12月20日的个人活期存款利息,结息利率为2005年12月20日本行挂牌公告的活期储蓄存款利率。 二、从2005年9月21日起,单位活期存款和协定存款按日计息,按季结息,计息期间遇到利率调整分段计息,每季度末月的20日为结息日。 三、定期存款、通知存款、定活两便、存本取息、零存整取和整存零取等其他存款种类的计结息规则维持现行做法不变。整存整取单位存款如遇提前 支取或逾期支取部分仍执行《人民币单位存款管理办法》(银发[1997]485号)相关规定,即按支取日挂牌公告的活期存款利率计息, 不分段计息。 四、贷款计结息规则维持现行做法不变。 特此通告。 中国工商银行 2005年09月14日 :fa-paper-plane-o: **整存整取测试说明** 整存整取的核心算法实现为:lumpCalc_sep 提前支取部分按活期,其存期的核心算法为:_daysFunc DaysFunc _daysFunc(const date& oday,const int real,bool lump_1=false) { /* 活期的存期核心算法 前提:假设2005/9/21日以前都不是按实际天数算的存期 lump_1: 为false表示是按活期存入的或定期未满一个存期就提前支取 为true表示定期起码存满了一个存期才提前支取 real:为真时一般按实际天数计算,例外之一是前面“前提”所指,其二是lump_1为true */ return (!real || oday<=date(2005,9,21) || lump_1) ? _days360 :_days36x; } 《中国工商银行关于修改部分存、贷款计结息规则和计息方法的公告》第三条: 三、定期存款、通知存款、定活两便、存本取息、零存整取和整存零取等其他存款种类的计结息规则维持现行做法不变 --------------------------------------- **现对工行整存整取存款实测如下** : 编号:0 存入时间: 2005-05-26 本金:3500.00 存期: 12 转存: 12 取出日期: 2006-06-18 本息和: 3564.25 税前息:80.318 税:16.064 时间段 本金 利率 税前息 税 ------------------------------------------------------------------------------ 2005-05-26 2006-05-26 3500.000 2.25 78.750 15.750 2006-05-26 2006-06-18 3563.000 0.72 1.568 0.314 :fa-twitter: 编号:0 存入时间: 2008-08-16 本金:5000.00 存期: 36 转存: 0 取出日期: 2008-09-07 本息和: 5002.09 税前息:2.200 税:0.110 时间段 本金 利率 税前息 税 ------------------------------------------------------------------------------ 2008-08-16 2008-09-07 5000.000 0.72 2.200 0.110 :fa-twitter: 编号: 0 存入时间: 2004/10/07 本金: 3000.00 存期: 12 转存期: 12 取出时间: 2008/10/08 本息和: 3283.06 税前息:328.718 税:45.661 时间段 本金 利率 税前息 税 --------------------------------------------------------------- 2004/10/07--2005/10/07 3000.000 1.98 59.400 11.880 2005/10/07--2006/10/07 3047.520 2.25 68.558 13.712 2006/10/07--2007/10/07 3102.366 2.52 78.170 13.940 2007/10/07--2008/10/07 3166.596 3.87 122.524 6.126 2008/10/07--2008/10/08 3282.994 0.72 0.066 0.003 ---------------------------------------------------------------- :fa-twitter: 编号: 0 存入时间: 2005/02/17 本金: 3000.00 存期: 12 转存期: 12 取出时间: 2006/06/18 本息和: 3059.91 税前息: 74.891 税:14.978 时间段 本金 利率 税前息 税 --------------------------------------------------------------- 2005/02/17--2006/02/17 3000.00 2.25 67.500 13.500 2006/02/17--2006/06/18 3054.00 0.72 7.391 1.478 --------------------------------------------------------------- **活期测试说明** 苦于无更多的测试用数据,难以验证......