【问题标题】:Excel filter times range items in column and sum values [closed]Excel过滤时间列中的范围项目和总和值[关闭]
【发布时间】:2013-05-23 17:11:56
【问题描述】:

例子

time     Type  Total      
8:00:00  B       2
8:03:00  S       3
8:07:00  S       10
8:10:00  B       5
8:17:00  B       7  
8:21:00  S       8
8:28:00  B       12

结果 每15分钟

8:00-8:15    B=7  S=13    
8:15-8:30    B=19 S=8 

【问题讨论】:

  • 也许这句话可以改写成某种问题? :)

标签: excel worksheet-function


【解决方案1】:

如果您提供的示例表位于 A1,那么您可以像这样创建行:

8:00:00    8:15:00   B=    =SUMIFS(C2:C8,A2:A8,">="&F2,A2:A8,"<"&G2,B2:B8,"B")    S=    =SUMIFS(C2:C8,A2:A8,">="&F2,A2:A8,"<"&G2,B2:B8,"S")

输出:

8:00:00 8:15:00 B= 7 S= 13

还有很多其他的方法可以做到这一点,但这种方法既快捷又简单,只需在时间列的下一行中输入即可

 =F2+TIME(0,15,0)    =G2+TIME(0,15,0)

然后往下拉到你想要的位置(F2 和 G2 保留你的第一次值)。

【讨论】:

  • +1 也一样,我第一次遇到time()!
【解决方案2】:

你的意思是怎么做?

你已经有间隔了吗?如果是这样,您可以使用SUMIFS:

=SUMIFS($C$2:$C$8,$B$2:$B$8,B$10,$A$2:$A$8,">="&LEFT($A11,FIND("-",$A11)),$A$2:$A$8,"<"&MID($A11,FIND("-",$A11)+1,99))

它有点长,但如果您的时间间隔格式为 hh:mm 而不是 h:mm 或 hh:mm,您可以将其缩短为:

=SUMIFS($C$2:$C$8,$B$2:$B$8,B$10,$A$2:$A$8,">="&LEFT($A11,5),$A$2:$A$8,"<"&RIGHT($A11,5))

第一个公式的问题是,无论您的范围是否列为08:00-08:15 或08:00:00-08:15:00 或9:45-10:00,都将需要正确的时间。另外,你可以输入一次公式,然后左右拖动,上下拖动表格的格式,看截图:

我将一个公式放在单元格 B11 中,然后将其拖到其他单元格中。

【讨论】:

  • 不客气@user2414542 :)
猜你喜欢
  • 1970-01-01
  • 2021-04-05
  • 1970-01-01
  • 2022-01-02
  • 1970-01-01
  • 2014-06-13
  • 2021-07-08
  • 2021-03-21
  • 1970-01-01
相关资源
最近更新 更多