最近在工作上遇到一个事,Access的日期计算问题,怎么说呢?
请看下表:
日常写法
|
|
Access 计算结果
|
开始日期
|
结束日期
|
|
开始日期
|
结束日期
|
2017-1-1
|
2017-3-31
|
|
2017-1-1
|
2017-4-1
|
2017-4-1
|
2017-6-30
|
|
2017-4-1
|
2017-7-1
|
2017-7-1
|
2017-9-30
|
|
2017-7-1
|
2017-10-1
|
2017-10-1
|
2017-12-31
|
|
2017-10-1
|
2018-1-1
|
|
|
|
|
|
2017-3-15
|
2017-4-15
|
|
2017-3-15
|
2017-4-15
|
2017-4-16
|
2017-5-16
|
|
2017-4-15
|
2017-5-15
|
2017-5-17
|
2017-6-17
|
|
2017-5-15
|
2017-6-15
|
日常写法和Access的计算结果都没有问题,都是3个月。但是,在物业管理行业了里面,就有问题,Access的计算结果不是很容易被大众理解,甚至是物业管理人员。
比如,水电费收取的期段,一般来说按照大众的理解是从2017-1-1至2017-3-31日,下一次就应该写2017-4-1至2017-6-30日,按Access的计算就变成了2017-1-1至2017-4-1日,2017-4-1日至2017-7-1日。然后就会有业主问,上一次你们(物业)已经收到4-1日,怎么这次又从4-1开始收,不是应该从4-2开始吗?然后又是一番解释。
那么Access的计算和日常的写法,差别在哪里呢?从上表可以看出,日常写法的下一次的开始日期是变动的,而Access是直接沿用上一次的结束日期。
所以我就写了个函数,专门解决这个问题。
比如:起始日期是2017-5-15间隔2个月是2017-7-16,下一跳的日期是2017-7-17
附 件:
日期计算