找回密码
 立即注册
搜索

将D列时间进行分类,确认当前时间在哪个时间段,并显示在J列? ...

6
回复
1963
查看
[复制链接]

2

主题

7

帖子

3

幻币

初入江湖

Rank: 1

积分
13
2021-9-24 14:19:00 显示全部楼层 |阅读模式
人员打卡记录表,同一人在不同时间打卡,想区分4个时间段(7:00-9:00,10:30-13:00,17:00-19:00,23:00-0:30),将D列时间进行分类,确认当前时间在哪个时间段,并显示在J列?麻烦哪位大神帮忙做个小工具!

工作簿1.rar (68.9 KB, 下载次数: 140)
PPT学习论坛
回复

使用道具 举报

0

主题

6

帖子

0

幻币

初入江湖

Rank: 1

积分
0
2021-9-27 03:08:58 显示全部楼层
不好意思,增加了两列辅助列。
工作簿11.zip (167.24 KB, 下载次数: 75)
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

8

帖子

0

幻币

东方不败

积分
-1
2021-10-8 20:57:53 显示全部楼层
=IFNA(LOOKUP(1,0/ISERR(FIND("-",IMSUB((MOD(D2,1)-1/48)&-(MOD(D2,1)-1/48)&"i",IMSUB($M$2:$M$5&"i","0:30-0:30i")))),$M$2:$M$5),"")

跨日临界点处理不来,笨方法
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

8

帖子

-2

幻币

初入江湖

Rank: 1

积分
4
2021-10-14 12:00:38 显示全部楼层
我的才是本方法
=IFNA(INDEX(M:M,LOOKUP(1,0/(MOD(D2,1)>={0,7,10.5,17,23}/24)/(MOD(D2,1)
<={0.5,9,13,19,24}/24),{5,2,3,4,5})),"")
不过都会有浮点误差,比如刚好0:30或者23:00的你那个会返回空
7点的用MOD得出的结果是小于7/24的,假如加上不到1秒即十万分之一那么9点这种没有浮点误差的又会比0.375大了。
真不知道如何才能得出正确的结果。
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

6

帖子

0

幻币

初入江湖

Rank: 1

积分
0
2021-10-28 08:28:56 显示全部楼层
酱紫哈~
=IFNA(LOOKUP(1,0/(TEXT(MOD(D2-1/4,1),"H:MM:SS")<=TEXT(MOD(MID(M$2:M$5,FIND("-",M$2:M$5)+1,9)-1/4,1),"H:MM:SS"))/(TEXT(MOD(D2-1/4,1),"H:MM:SS")>=TEXT(LEFT(M$2:M$5,FIND("-",M$2:M$5)-1)-1/4,"H:MM:SS")),M$2:M$5),"")
PPT学习论坛
回复 支持 反对

使用道具 举报

0

主题

7

帖子

0

幻币

初入江湖

Rank: 1

积分
0
2021-11-15 21:28:58 显示全部楼层
=IFNA(LOOKUP(1,0/ISERR(FIND("-",IMSUB((MOD(D2,1)-1/48)&-(MOD(D2,1)-1/48)&"i",IMSUB($M$2:$M$5&"i","0:30:01-0:29:59i")))),$M$2:$M$5),"")

我的意思是处理不来两段IMSUB怎么合并,只能分开处理。
PPT学习论坛
回复 支持 反对

使用道具 举报

1

主题

9

帖子

1

幻币

初入江湖

Rank: 1

积分
8
2021-12-18 07:53:12 显示全部楼层
IF+AND+MOD普通公式,简单粗暴直观,只是公式偏长了点,笨笨的见笑了:
J2=IF(AND(MOD(D2,1)>=7/24,MOD(D2,1)<=9/24),"7:00-9:00",IF(AND(MOD(D2,1)>=10.5/24,MOD(D2,1)<=13/24),"10:30-13:00",IF(AND(MOD(D2,1)>=17/24,MOD(D2,1)<=19/24),"17:00-19:00",IF(AND(MOD(D2,1)>=23/24,MOD(D2,1)<=0.5/24),"23:00-0:30",""))))
PPT学习论坛
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册