【Excel VBA编程】单元格内动态增加进度条,直观显示合同是否到期

目录

引言

问题的分析与设计

进度条的设计与实现

代码入口设计

代码实现

运行结果

回顾总结


引言

下图是合同签订的明细表,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这两个参数是可选的,暂时不涉及

重点看一下进度条的实现 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wei1019

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值