首页 > 解决方案 > 我需要根据excel中另一列中的一天中的时间对列中的单元格进行平均,即早上、下午和晚上

问题描述

我试图将满足某些标准的列的平均值放入单个单元格中。以下公式有效: =AVERAGEIFS(tblData[Sys],tblData[Time],">=12:00 PM",tblData[Time],"<6:00 PM") 但是当我将时间值调整为: = AVERAGEIFS(tblData[Sys],tblData[Time],">=6:00 PM",tblData[Time],"<4:00 AM") 我得到一个错误。我猜这是因为时间范围进入了第二天。是否有更好的功能或解决方法?

标签: excelexcel-formulaexcel-2010average

解决方案


这个公式似乎适用于你的场景。它检查结束时间是否早于开始时间(但在第二天)并相应地更改逻辑:

=AVERAGE(
      IF(
        IF(tmStart>=tmEnd,
                  (tblData[Time]>=tmStart)+(tblData[Time]<=tmEnd),
                  (tblData[Time]>=tmStart)*(tblData[Time]<=tmEnd))
          =1,tblData[Sys],""))

在此处输入图像描述


推荐阅读