原创申明

本文原创作者为刘诚燃,欢迎转发,谢绝转载。群友一直想让笔者教大家如何写一些excle公式以辅助填报1104台账。像sumifs,vlookup这些常用公式我想大家一定并不陌生,今天就教一个更很简单又非常适用的公式。

1104报表中,剩余期限计算是一件很让人头大的问题,比如,G21里91日至1年,这1年到底是360天,还是1年?还有G33报表里,1.5年到底是多少天?G18里是含下不含上,其他报表又是含上不含下?如何利用2个日期直接得出剩余期限?本文一一归纳整理,是一个非常有用的实用贴。

一、G21中一年到底是如何区分的?

笔者在1104企业微信群里先做了一个调研,结果发现G21关于1年还真是差别挺大的,有的是按360天,有的是对年对月对日,有的是365天,如果再设个366天估计也会有人填。

的确,G21填报说明里没有明说,但我们可以通过后面关于活期存款的案例来做一个推断G21里的1年实际是指360天。

本行的F列[1年至5年]根据过去12个月最低的活期存款额填报,反映活期存款中较为稳定的部分;A-E列为自动计算项目,反映其余部分的活期存款平均列入一年以内的各剩余期限区间的情况(以各时间段期限占比进行分配)。例如,某银行在2009年3月底的活期存款(不含财政性存款)为150亿元,在过去12个月中最低活期存款额(不含财政性存款)是80亿元,那么该银行3月末活期存款(不含财政性存款)中较为稳定的部分就是80亿元,应在“一年以上”项目下填入80亿元;其余部分即(150-80)亿元,要平均列入一年以内的各剩余期限内(以各时间段期限占比进行分配),如在“2日至7日”项目下应填入((150-80)/360)*(7-2+1)亿元。

G21可以统计次日、2日至7日、8日至30日、31日至90日、91日至1年、1年至5年、5年至10年、10年以上各个时段的流动性缺口和流动性缺口率。报表虽然体现的是各个时段,银行自身在算缺口率时应该精确到每一日。系统不支持的话,做流动性管理的司库至少手工要能算出1年内每一日的流动性缺口情况。

在统计逾期时间段我们经常用到也是30天、60天、90天、180天、270天和360天这些时段,所以360天是一个非常重要的时间节点。我们在计算利息时1年换算成日利率也是用的是360天。

二、G0104中原始期限1年是多少天?

G0104中,存款或贷款的原始期限包括活期、三个月以内、三个月至六个月、六个月至一年、一年至两年、两年至三年、三年至五年、五年以上、逾期这几种分类方式。

本表中时间划分区间均为含上限时间,不含下限时间。如“一年至两年”则为含两年不含一年。月、年均按自然月年统计。实际统计时,应按存贷款原始(合同)期限分类填列,

总结而言就是含上不含下,如果正好是1年则六个月至一年这个时段内。按照对年对月对日的原则,一年纠结是多少天呢?

答案是可能是365天也可能是366天。比如2018年11月24日发放的一年期贷款,到期日为2019年11月24日,两个日期直接相减,得到的是365天。如果2019年11月24日发放的一年期贷款,到期日为2020年11月24日,两个日期直接相减得到的却又是366天。因为2020年是闰年,2月有29号。

那么如果是2020年2月29日发放的1年期贷款,到期日是哪一天呢?2021年没有2月29日,年和月对上了,日对不上,就要往后推1天,也就是2022年3月1日才是1年。两个日期相减依然是366天。

三、G3301中剩余期限1.5年是怎么统计的?

如果我们知道除G21中1年是指360天外,其他报表剩余期限1年或n年都是对年对月对日的话,那么就可以得出G3301中剩余期限1.5年实际是指1年零6个月,依然是对年对月对日。

比如,2019年6月30日统计剩余期限区间为1年-1.5年(含)的贷款,2020年12月30日正好是1.5年,落在这一区间之中,2020年12月31日则要统计到1.5年-2年(含)这一区间了。

四、先算剩余天数,再算剩余期限

开始这一问题也让我困扰了很久,首先想到的是2个日期相减得到剩余天数,然后用if嵌套公式来计算。

=IF(T5<0,"未定期限",IF(AND(T5>=0,T5<=1),"次日",IF(AND(T5>1,T5<=7),"2日至7日",IF(AND(T5>7,T5<=30),"8日至30日",IF(AND(T5>30,T5<=90),"31日至90日",IF(AND(T5>90,T5<=360),"91日至1年",IF(AND(T5>360,T5<=1826),"1年至5年",IF(AND(T5>1826,T5<=3652),"5年至10年",IF(T5>3652,"10年以上")))))))))

注T5是两个日期直接相减

但这么算无法避开闰年的问题,比如剩余期限10年,在不同的时间点计算,可能是3652天(中间有2个闰年),也可能是3653天(中间有3个闰年)。

这样算出来的,对年对月对日可能对不上,比如2019年6月30日至2029年6月30日相差3653天,2020年6月30日至2030年6月30日则是相差3652天。这个公式在剩余期限每期都要做一些更新,而且在计算原始期限根本就没法用。

五、直接用2个日期相减的excle公式

万能的Excel肯定是有办法的,我记得有个函数是可以计算2个日期间相差多少年、多少月、多少日的。

对,就是DATEDIF函数,DATEDIF(A,B,“d”)计算的是2个日期间的天数差;DATEDIF(A,B,“m”)计算的是2个日期间的月数差;DATEDIF(A,B,“y”)计算的是2个日期间的年数差;DATEDIF(A,B,“md”)计算的是2个日期间的日的差;DATEDIF(A,B,“ym”)计算的是2个日期间的月的差。

我们用后面3个函数先构建2个日期间相差多少年多少月多少日,对年对月对日就是1年0月0日就对上了,整好1年。

用公式去试验2020年2月29日至2020年2月28日是11个月30天,不到1年;到2021年3月1日才是1年。

我们再插入1列,对计算出来的年、月、日3列做一些技术性处理,年×1+月×0.01+日×0.0001,这样如果算出来是1,就是正好1年,算出来是1.06,就是1.5年。

这时候我们相当于在excel中增加了3列,但输入2个日期还是得不到剩余期限啊?这时候我们就想到是否可以用match函数来做排序,设置一些关键性节点,再用choose函数来设定对应值,以确保2个日期直接相减落在对应区间内。

比如在G0104中,我们做了一个这样的函数。

=CHOOSE(MATCH(J2,{10000,1000,5,3,2,1,0.06,0.03,0.00009},-1),"活期","五年以上","三年至五年","两年至三年","一年至两年","六个月至一年","三个月至六个月","三个月以内","逾期")

因为是含上不含下,所以要做降序排列,Match_type取-1。如果是G18中含下不含上,则要做升序排序,Match_type取1。

Match_type:1 或省略,表示MATCH 函数会查找小于或等于 lookup_value 的最大值。lookup_array 参数中的值必须按升序排列,例如:...-2, -1, 0, 1, 2, ..., A-Z, FALSE, TRUE。

Choose函数,其作用是在EXCEL中choose函数从参数列表中选择并返回一个值。这时候返回值就可以把计算出来的剩余天数固定在某一区间了。

注意5年以上我们使用的阈值是1000,此外我们还设置了一个活期的阈值10000,这时候要把活期存贷款的到期日调整为9999-01-01。1万年后,银行还在么。。。。

同时还设置了0.00009这个逾期的阈值,比如到期日正好在报告日,还没有归还的贷款实际就已经逾期了。小于0.0001,或者为负数的就是逾期贷款。

最后我们省略中间步骤,把间接公式合并成一个直接公式,就可以用2个日期相减直接得到剩余期限的区间了。

=CHOOSE(MATCH((DATEDIF(D2,E2,"Y")+DATEDIF(D2,E2,"YM")*0.01+DATEDIF(D2,E2,"MD")*0.0001),{10000,1000,5,3,2,1,0.06,0.03,0.00009},-1),"活期","五年以上","三年至五年","两年至三年","一年至两年","六个月至一年","三个月至六个月","三个月以内","逾期")

是不是很简单的一个公式。要注意的是不同报表剩余期限各种各样。因此还是要多做几套公式,尤其是在G21里面有2个不同的剩余日期判断方法。1年按360天,2年则又是对年对月对日,所以要先用if判断剩余期限是否超过360天,是的话就用上面公式,不是的话则用2个日期相减的天数来判断。

=IF((E3-D3)>360,CHOOSE(MATCH((DATEDIF(D3,E3,"Y")

+DATEDIF(D3,E3,"YM")*0.01+DATEDIF(D3,E3,"MD")*0.0001),{10000,10,5},-1),"10年以上","5年至10年","1年至5年"),CHOOSE(MATCH((E3-D3),{360,90,30,7,1,0},-1),"91日至1年","31日至90日","8日至30日","2日至7日","次日","逾期"))

公式还是写不好,那就加入下面的1104交流群吧,附不同报表剩余期限计算公式。

加入1104全国交流群

1104爱好者4000+的社群

需下载【企业微信】APP

mysql中日期相减_1104绝密公式,如何直接用2个日期直接算剩余时间区间相关推荐

  1. mysql中日期相减_解放双手!用这3个日期函数解决入职、工龄等天数的计算

    人事部门员工的入职天数.财务部门合同的到期剩余天数等等,可以通过Excel表格来实现自动计算功能. 今天小编分享三个与日期有关的函数 一.EDATE函数 很多公司新员工入职会有3个月试用期,根据入职日 ...

  2. 日期相减 python_如果将excel的数字转化为日期(高级教程)

    不知道大家有没有这样的体会,明明我们在单元格里输入的是一个日期,但是excel却提示我们输入的是一个数字,这个东西就很奇怪了,43471怎么就成了日期了那? 实际上这和计算机的底层设置有关系,计算机是 ...

  3. mysql中日期相减_非凡教育教你excel怎么计算两个日期天数差和时间差

    商务办公培训老师在本文中主要是介绍如何在excel中计算日期和时间,包括两个日期之间的天数.时间之间的差和显示样式. 首先,计算两个日期之间的天数.在excel中,两个日期直接相减就可以得到两个日期间 ...

  4. mysql时间相减得到天数保留两位_mysql 中两个日期相减获得 天 小时 分钟 或者 小时:分钟的格式...

    /**有一个需求,要求获得两个日期想减的天数,小时数,分钟数.通过查找资料,于是乎我写出了如下代码,来获得两个字段.*/ IFNULL(CONCAT( IF(aib.`forecast_reply_t ...

  5. mysql时间相减得到天数保留两位_[转]Mysql日期函数-日期相减返回天数

    MySQL datediff(date1,date2):两个日期相减 date1 - date2,返回天数. select datediff('2008-08-08', '2008-08-01'); ...

  6. 两个年月日怎么相减_(excle可以计算日期差值吗)excel表中,两个日期相减如何得出相差年月...

    如何使用excel函数计算两个日期参数的差值 "使用excel函数计算两期参数的差值"的操骤是: 1.以Excel 2016为例,打开Excel工作表: 2.由已知条件可知,需要根 ...

  7. mysql当前日期减去天数_mysql日期函数-日期相减返回天数

    一.MySQL 获得当前日期时间 函数 1.1 获得当前日期+时间(date + time)函数:now() mysql> select now(); +-------------------- ...

  8. ORACLE中的日期相减

    最近做医院的系统,有很多数据要求求出一个时间段来,比如手术执行多长时间,患者住了多长时间的院等.每次都是BAIDU,后来发现在ORACLE中,两个日期相减的差是以天计算的.如: select to_d ...

  9. pandas 中处理日期相减问题

    pandas 中处理日期相减问题. 假设 有这样 一个需求, 我获取了一组日期是某个人的通话日期, 我想计算出 这段时间里面, 没有通话的天数, 以及 连续3天以上没有通话的次数 #!/usr/bin ...

  10. sql 数据库语句中日期相减

    sql中两个日期相减 1.相差天数 select trunc(sysdate,'yyyy')-to_date('2009-01-04','yyyy-mm-dd') from dual; 2.相差月数 ...

最新文章

  1. linux视频教程之进程管理
  2. python检查列表是否为空_Python 中判断列表是否为空的方法
  3. 加载Loader.bin
  4. DeepLearning:windows环境下C++环境实现Tensorflow编译部署
  5. 编译期间确定类型安全——泛型(Generics)
  6. Mysql5.7 ZIP 压缩包非安装版的安装方式
  7. java solr_通过Java访问Solr服务实例及相关配置
  8. python椭圆识别_Python+pillow计算椭圆图形几何中心
  9. Jenkins配置工具
  10. 3-3 修改haproxy配置文件
  11. spring mvc mvc:default-servlet-handler / 。
  12. CLP 中关闭自动落实的问题
  13. c make干什么用得_CMake简单使用
  14. Flash小游戏星空大战SpaceBattleGame 源代码
  15. javascript回调函数有什么用
  16. 联邦学习(Federated Learning)学习小记
  17. 【Python学习】打印n位内从1到最大的整数
  18. 解答为什么@Autowired使用在接口上而不是实现类上
  19. unity photon中技能效果网络同步
  20. c语言程序如下,某C语言程序如下: #include stdio.h void main() { floa.._简答题试题答案...

热门文章

  1. matlab最大剩余法,有限元法、有限差分法和有限体积法的区别(转载)
  2. python语言磁力搜索引擎源码公开,基于DHT协议
  3. 51单片机用C语言实现交通灯(红绿灯)源程序实训QY-KP1
  4. 图论及其应用:第三次作业
  5. MSN下载2010最新版
  6. c语言整人小程序格式,【C语言】整人小程序
  7. Cisco Packet Tracer思科模拟器中OSPF动态路由配置
  8. Java移位运算符详解实例
  9. 计算机图形学——大作业
  10. Lightbox插件