ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 901|回复: 9

[求助] 判断一组时间段是否含有非上班时间,有的话提示异常,否则提示正常

[复制链接]

TA的精华主题

TA的得分主题

发表于 2019-10-14 15:32 | 显示全部楼层 |阅读模式
下面数据中,如包含12:00:00-13:30:00或17:00:00之后的时间段,则提示异常,否则提示正常。
请老师帮忙,谢谢。

[08:36:39-08:44:27, 08:48:25-09:05:23, 09:05:23-09:05:41, 09:10:17-09:19:42, 09:19:42-09:19:53, 09:23:31-09:47:30, 09:47:30-09:48:01, 09:53:58-10:20:15, 10:20:15-10:20:23, 10:20:55-10:21:54, 10:22:36-10:24:06, 10:24:06-10:24:12, 10:24:45-10:25:57, 10:25:57-10:26:03, 10:26:58-10:27:59, 10:27:59-10:28:06, 10:28:50-10:31:45, 10:31:45-10:31:52, 10:31:58-10:38:32, 12:05:32-12:38:41, 14:40:18-14:40:49, 14:40:49-14:40:58, 15:42:18-15:43:27, 15:43:27-15:44:25]

TA的精华主题

TA的得分主题

发表于 2019-10-14 16:00 | 显示全部楼层
这样记录数据,处理起来够麻烦,用代码处理吧,或者分列然后公式会简单些

评分

1

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-14 16:04 | 显示全部楼层
micch 发表于 2019-10-14 16:00
这样记录数据,处理起来够麻烦,用代码处理吧,或者分列然后公式会简单些

老师好,因为这个数据是从系统调取出来的,而且数据不单单是这一个,一个员工对应一个时间段,所以发帖求助大家,谢谢老师。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-15 09:22 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
求助大神帮忙看下,谢谢。

TA的精华主题

TA的得分主题

发表于 2019-10-15 10:54 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
1,假设你的数据源在A1单元格
2,包含12:00:00-13:30:00或17:00:00之后。。。我理解为前一个时间段>=12:00:00;后一个时间段<=13:30:00,并列关系。17:00:00之后,我理解为两个时段都>=17:00:00
3,A2=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1,",","'/><b x='"),"-","' y='"),"[","<a><b x='"),"]","'/></a>")
4,公式=IF(OR((FILTERXML(A2,"//@x")>=VALUE("12:00:00"))*(FILTERXML(A2,"//@y")<=VALUE("13:30:00")),FILTERXML(A2,"//@x|//@y")>=VALUE("17:00:00")),"异常","正常")
。。。这个火车大概超过了16节车厢~~~

TA的精华主题

TA的得分主题

发表于 2019-10-15 11:14 | 显示全部楼层
瞎写一个
  1. =TEXT(SUM((IFERROR(--MID(SUBSTITUTE(A1,CHAR(32),),ROW($1:$99)*9-7,8),)<13.5/24)*(IFERROR(--MID(SUBSTITUTE(A1,CHAR(32),),ROW($1:$99)*9-7,8),)>0.5)+(IFERROR(--MID(SUBSTITUTE(A1,CHAR(32),),ROW($1:$99)*9-7,8),)>17/24)),"[=0]正常;异常")
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-15 16:26 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

谢谢老师,测试了下,提示的都是正常。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-15 16:27 | 显示全部楼层
轩檐 发表于 2019-10-15 10:54
1,假设你的数据源在A1单元格
2,包含12:00:00-13:30:00或17:00:00之后。。。我理解为前一个时间段>=12:00 ...

老师好,按照你写的测试,得出的结果是无效名称,谢谢。

TA的精华主题

TA的得分主题

发表于 2019-10-15 16:35 | 显示全部楼层
fingerx0609 发表于 2019-10-15 16:26
谢谢老师,测试了下,提示的都是正常。

输入公式以后按ctrl+shift+enter结束。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-10-15 16:45 | 显示全部楼层
dipperrrr 发表于 2019-10-15 16:35
输入公式以后按ctrl+shift+enter结束。

感谢老师,功能实现了。
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-3-29 23:22 , Processed in 0.051260 second(s), 13 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表