我有一个电子表格,其中包含进入某个系统的日志数据
Log in time Log out time Id User_type
2018-03-21 18:28 2018-03-21 19:59 1584550 S1
2018-03-21 14:57 2018-03-22 00:29 1584549 S1
2018-03-21 11:01 2018-03-21 12:01 1584548 C2
2018-03-21 01:25 2018-03-21 03:01 1584547 C2
2018-03-20 20:20 2018-03-20 21:14 1584546 S2
... (hundreds of rows) ...
这是一周 168 小时的数据。我需要的是每小时登录系统的人数明细。结果看起来应该像这样:
19/03/2018 0:00-0:59 5
19/03/2018 1:00-1:59 4
19/03/2018 2:00-2:59 6
19/03/2018 3:00-3:59 8
19/03/2018 4:00-4:59 9
-- and so on...
我已经知道如何使用 groovy 脚本来执行此操作,并在循环中总结它,但是可能有一些内置的 Excel 函数可以用于此,对吗?
我将非常感激任何见解,谢谢。
答案1
对于 A:D 中的源数据(第 1 行 - 标题)、F 列中的小时数(包含数据)列表,在 G1 中使用下一个公式:
=COUNTIFS($A:$A,"<" & F1,$B:$B,">" & F1)
将其拖到日期-小时列表上。
该公式计算每个日期-小时值(点)重叠的登录用户数量。要计算范围的部分重叠,您可以编辑公式(并且,也许,在日期-小时列表中再添加一列,从-到)。