2016-05-18 166 views
0

我有一个电子表格,可以跟踪一个月内平均文件处理时间。我们喜欢的宏和统计数据之一是星期一的表现(因为这些文件在周末有点建立)。电子表格是在每个月的工作日整理成列:Excel - 如何获取日期是一周中的特定日期?

Excel Example

的日期格式MM/DD/YYYY,所以我认为Excel中有一个日期函数,它可以基于该日期值确定工作日。

目前,我只需要手动告诉宏哪些列是星期一,就像这样:

=AVERAGE(B20,G20,L20,Q20) 

因此,而不是手动,我将如何获得平均超过发言权的范围内,B20V20 ,只有当星期几是星期一(日期单元格在第1行,所以B1V1)?

+0

答案是你的问题。查看** weekday **函数返回整数1-7,告诉你哪一天是哪一天。 – gtwebb

+0

如果您需要支持通过在工作表中查找工作日来获得它的功能,那么添加宏代码的副本将会非常有用。 – Carrosive

回答

0

如果你的日期是在A1,你可以使用=Text(A1,"dddd")确定星期(它会返回名字,“星期一”,“星期二”,等等),那么你可以这样做也许:

=If(text(A1,"dddd")="Monday",[do whatever],[do whatever])(可能需要一个帮手行/列,以保持平日的文本)

(或使用AverageIf()和使用Text()想法。)

+0

'= TEXT'绝对是一个学习,因为它非常有用! [更多信息请点击此处。](http://www.excelfunctions.net/Excel-Text-Function.html) – Carrosive

0

可能的话,你可以添加一个名为[星期几列]并使用以下公式显示当天。

TEXT(B4, “DDDD”)

然后添加一个“If'statement你的结果单元格。

0

简单地

=SUMPRODUCT((MOD(B1:V1,7)=2)*B20:V20)/SUMPRODUCT((MOD(B1:V1,7)=2)*1) 

应如果在第1行对应的细胞是从星期一B20得到的所有值的平均来V20。

第一部分总结所有星期一的值,第二部分计算他们(和/数=平均);)

如果您有任何问题,只是问。

0

为了确定在一个EXCEL日期的星期使用=WEEKDAY()式,其评估为1(星期日)到7(星期六)

例如如果A1包含2016年12月31日(或2016年12月31日,如果您来自我的位置),则=WEEKDAY(A1)将会评估为7(表示2016年的最后一天是星期六)

这个公式适用于您的问题:(假设日期是在第1行和值在第2行)

  • 插入新行来保存WEEKDAY()值(比方说,第2行)
  • 在单元格A2类型=WEEKDAY(A1)
  • 将此公式尽可能地复制到正确的位置(包括所有日期)

您的星期一平均值被计算为=AVERAGEIF(2:2, 2, 3:3)

相关问题