从登记入住和退房日期开始按月查找空缺率的公式

时间:2015-10-21 06:42:25

标签: excel excel-formula

我正在处理一个电子表格。我想知道从办理入住和退房日期算起的总夜数(按月计算),空缺%(按月计算)和平均夜间费率(按月计算)。

我用谷歌电子表格创建了简单的格式。请查看此https://docs.google.com/spreadsheets/d/1AZfpAic0PT3phLiedZh7I43pu6A3L9w4RhTchKtA0zw/edit#gid=0

总之,需要填写“??”字段。

2 个答案:

答案 0 :(得分:1)

假设样本数据位于C6:H63 (根据需要调整) 注意:开头包含三个记录,显示明年的摘要以及每月容量超出月容量的错误。

此解决方案需要:

  • 两个工作单元,为增长提供灵活性和空间:

容量(房间):位于E4;用来容纳房间总数(实际上是一个,希望业务会增长)

年度:数据中第一个句点的年份,用于更新“每月分配”,“每月摘要”的标题。位于K4

总夜数:修改公式以计算列E中的总夜数,以便验证Check In& Check Out日期。在E7中输入此公式并复制到最后一条记录:

=ISNUMBER( C7 ) * ISNUMBER( D7 ) * ( $D7 > $C7 ) * SUM( $D7, - $C7 )

结果范围包括两个区域 (参见图1)

  1. 每月分配:位于J6:V63

    标题:将Number Format范围J6:X6更新为mmm-yy,将Y6更新为mmm dd, yyyy。用于更新此区域的标题。在J6

    中输入此公式
    =DATE( $K$4, 1, 1 )
    

    此公式位于K6并复制到L6:X6

    = 1 + EOMONTH( J6, 0 )
    

    然后在Y6

    中输入此公式
    =EOMONTH(X6,0)
    

    正文:要分配每月占用率,请在J7中输入此公式并复制到最后一条记录,然后复制到其他月份K7:X63

    =IFERROR( IF( $E7 = 0, "", CHOOSE( 1
    + ( 1 + EOMONTH( $C7, -1 ) = J$6 ) * 1
    + AND( 1 + EOMONTH( $C7, -1 ) < J$6, 1 + EOMONTH( $D7, -1 ) > J$6 ) * 2
    + ( 1 + EOMONTH( $D7, -1 ) = J$6 ) * 3,
    "",
    1 + DAYS( EOMONTH( J$6, 0 ), $C7 ),
    1 + DAYS( EOMONTH( J$6, 0 ), J$6 ),
    DAYS( $D7, J$6 ),
    SUM( $D7, - $C7 ) ) ),
    "" )
    
  2. 每月摘要:位于I65:Y67

    总夜数:在J67 and copy till Y67`中输入此公式

    =SUM( Y$7:Y$63 )
    

    空缺%:在J65中输入此公式,然后复制到Y65。如果!Err (参见图2中的occupancy > capacity,此公式还会根据总容量验证总占用率并返回Dec-15

    =IF( J$67 > ( ( 1 + DAYS( EOMONTH( J$6, 0 ), J$6 ) ) * $E$4 ), "!Err",
    1 - J$67 / ( ( 1 + DAYS( EOMONTH( J$6, 0 ), J$6 ) ) * $E$4 ) )
    

    平均每晚费率:在J66中输入此公式并复制到X66

    =SUMPRODUCT( J$7:J$63, $H$7:$H$63 )
    

    并在Y66

    中输入此公式
    = 1 - $Y$67 / ( ( 1 + DAYS( $Y$6, $J$6 ) ) * $E$4 )
    
  3. enter image description here

    图。 1

    enter image description here

    图。 2

答案 1 :(得分:0)

即使访问时间超过两个月,您也需要将每次访问的天数分配到正确的月份。我将首先在I至T列中添加12个带有标题1-12(即每月一个)的帮助列,并使用从I2开始的以下公式来查找每个月访问的天数: -

=MAX(MIN(EOMONTH(DATE(2015,I$1,1),0)+1,$D2)-MAX(DATE(2015,I$1,1),$C2),0)

然后从V7开始每月获得空缺百分比并拉开: -

=(DAY(EOMONTH(DATE(2015,I$1,1),0))-SUM(I2:I55))*100/DAY(EOMONTH(DATE(2015,I$1,1),0))

要获得从V8开始每月的平均房价并且拉开: -

=ArrayFormula(iferror(SUM(I2:I55*$H2:$H55)/SUM(I2:I55),""))

从V9开始,每个月的总夜数从以下开始: -

=sum(I2:I55)

帮助者栏目: -

enter image description here

结果: -

enter image description here