目录
引言
下图是合同签订的明细表,D列需要计算合同到期剩余天数,E列则是增加进度条,需要使用不同颜色的图形显示是否到期,并根据图形的长短直观的显示多久到期或过期多长时间
实现效果图如下,D列数负数表示合同已经到期,在E列用红色条形图表示,从E列单元格的中心位置向左增长;D列正数表示合同未到期,在E列用绿色条形图表示,并且从E列单元格的中心位置向右增长。另外,D列数据的绝对值越大,按照一定的比例进度条越长
像这类需求要怎么实现呢?尤其是E列红色和绿色进度条,毫无头绪,不急,我们一步步慢慢去了解,等全部阅读完本期内容,相信你也可以做出来了。
问题的分析与设计
计算剩余天数很简单,使用DateDiff函数即可实现
DateDiff(DateInterval, date1, date2, [firstdayofweek], [firstweekofyear])
参数说明:
- - DateInterval:必需,表示要计算的时间间隔单位。可选值有:yyyy(年)、q(季度)、m(月)、y(日年)、d(日)、w(周)、ww(双周)、h(小时)、n(分钟)和s(秒)。
- - date1:必需,表示第一个日期或时间。
- - date2:必需,表示第二个日期或时间。
- firstdayofweek、firstweekofyear这两个参数是可选的,暂时不涉及
重点看一下进度条的实现