在Excel中,如何计算日期范围之间的天数,仅计算一周中的特定日期

时间:2014-03-05 16:19:42

标签: excel

我试图在两个日期之间获得#天,但必须只计算问题中每对日期指定的一周中的几天。

例如:

运营日期= 2013年9月1日和2014年5月16日 运营中的几天=周一,周三,周五

考虑到每周的运营天数,我想计算实际运营的总天数。

2 个答案:

答案 0 :(得分:6)

如果您使用的是Excel 2010或更高版本,则可以使用NETWORKDAYS.INTL功能,该功能可让您自定义计算的天数,例如:以下公式将在Mondays的开始日期和Wednesdays(包括)的结束日期之间计算FridaysA2B2,同时排除列出的假日日期在H2:H10

=NETWORKDAYS.INTL(A2,B2,"0101011",H$2:H$10)

字符串“0101011”定义要包含的天数 - 包括0,排除1 - 从星期一开始

在早期的excel版本中,您可以将此公式用于相同的结果

=SUMPRODUCT((WEEKDAY(ROW(INDIRECT(A2&":"&B2)))={2,4,6})*(COUNTIF(H$2:H$10,ROW(INDIRECT(A2&":"&B2)))=0))

其中{2,4,6}定义要包括的工作日(1 = Sun到7 = Sat)

答案 1 :(得分:0)

日期之间的天数仅为date1 - date2。

一种方法是将运行天数除以一周中的天数。在这种情况下,这将是3/7。在此示例中,运行的天数为110.14天。以下是你的例子。单元格B4具有1-sep-13,b6具有16-may-14,两者都格式化为日期。

    B
4   41518   

6   41775   

8   =B6-B4  Days
9   =B8/7   Weeks
10  =B8*3/7 

    01-Sep-13   

    16-May-14   

    257         Days
    36.71   Weeks
    110.14

为了更准确,您需要知道一周中的哪一天,工作日(),您所在范围内的第一天以及您最后一天的哪一天。