我需要一个excel公式来计算这个人是否仍然在一个时间范围内登录。例如:
Person TimeIn TimeOut
1 6/22/2013 10:32 AM 6/22/2013 11:35 AM
2 6/22/2013 10:36 AM 6/22/2013 12:52 PM
3 6/23/2013 10:40 AM 6/23/2013 5:15 PM
4 6/25/2013 12:42 PM 6/25/2013 1:25 PM
5 6/25/2013 1:42 PM 6/25/2013 4:53 PM
6 6/26/2013 3:30 PM 6/26/2013 5:00 PM
10:00AM - 12:00PM
计数应为3
。在这两个时间之间签署了人1 2 3
12:00PM - 2:00PM
计数应为4
。在这两个时间之间签署了人2 3 4 5
2:00PM - 4:00PM
计数应为3
。在这两个时间之间签署了人员3 5 6
4:00PM - 6:00PM
计数应为3
。人员3 5 6在这两次之间签署了
基本上如果这个人没有退出,并且在这两次之间,我需要一个忽略日期的计数。
答案 0 :(得分:1)
假设B2:C7
中有TimeIn / TimeOut数据,那么您可以将特定时间范围放在E2/F2
中,例如E2
中的上午10:00,F2
中的中午12:00,然后在G2
中使用此公式计算该时段任何部分的人数
=SUMPRODUCT((MOD(B$2:B$7,1)<F2)*(MOD(C$2:C$7,1)>E2))
参见示例here
MOD
函数仅从日期/时间值中提取时间
注意:这不适用于午夜过去的时间段,例如8:00 PM
一天5:00 AM
到{{1}}下一段时间(尽管我可以调整它)
答案 1 :(得分:0)
假设您的第一个'Time In'记录('2013年6月22日上午10:32')在单元格B2中,请使用以下公式告诉您,尽管是日期,时间是否为:10-12 ,12-2,2-4,4-6,或在这些范围之外,将其放在单元格D2中,将其填满。
=IF(AND(TIMEVALUE(TEXT(B2,"hh:mm"))>=0.41667,TIMEVALUE(TEXT(B2,"hh:mm"))<0.5),"10-12",IF(AND(TIMEVALUE(TEXT(B2,"hh:mm"))>=0.5,TIMEVALUE(TEXT(B2,"hh:mm"))<0.58333),"12-2",IF(AND(TIMEVALUE(TEXT(B2,"hh:mm"))>=0.58333,TIMEVALUE(TEXT(B2,"hh:mm"))<0.66667),"2-4",IF(AND(TIMEVALUE(TEXT(B2,"hh:mm"))>=0.66667,TIMEVALUE(TEXT(B2,"hh:mm"))<0.74999),"4-6","Out of Specified Time Ranges"))))