我有一个房屋租赁业务,我想计算入住率 . 为此,我需要计算两个日期(登记入住和退房)之间特定月份的夜晚数量 .
这是一个例子:
A B C D E F
1 | IN | OUT | NIGHTS | 01/01/18 | 01/02/18 |...
------------------------------------------------------------
2 | 15/01/18 | 25/01/18 | 10 | 10 | 0 |...
------------------------------------------------------------
3 | 28/01/18 | 04/02/18 | 7 | 3 | 3 |...
以下是以下公式:
C3 = B3-A3
D3 = MAX(0; MIN(EOMONTH(D$1;0); $B3) - MAX(D$1; $A3))
我想我不是太远但公式仍然不正确 . 如您所见,D2是正确的,但D3是错误的 . 这是一个棘手的部分,当这种情况在1月和1月的2个月内重叠时 . D3应该显示4晚而不是3晚 .
有人可以帮忙吗?提前致谢!
PS:抱歉格式化,但我无法添加截图..
2 回答
我想你只是无条件地在一个月末添加一天 - 我需要尝试使用一两个测试用例 .
只是说明四种可能的情况 - 给定开始日期d1 / m1 / y1(A3),结束日期d2 / m2 / y2(B3),当前月份的第一天01 / mm / yy(D1)和当前的最后一天月dd / mm / yy(D1中的最后一天)
换句话说,它计算范围内一天后的每个夜晚,但不计算该范围内一天之前的夜晚 .
您可以有条件地添加一天,当停留期延长到月末 . 这将使该时段包含在内而不是简单的减法 .