Excel IF与AND函数判断时间区间返回VALUE错误求解决
解决Excel时间判断公式的VALUE错误问题
错误原因
你直接在公式里写8:15和17:00,Excel无法识别这种裸写的时间格式,所以返回VALUE错误。必须用Excel能识别的时间表达式来定义时间阈值。
正确公式方案
方案1:使用TIME函数生成时间值
TIME函数通过时、分、秒参数生成标准时间值,公式如下:
=IF(AND(J2>TIME(8,15,0),J2<TIME(17,0,0)),"In hours(工作时间)","Out of Hours(非工作时间)")
TIME(8,15,0)对应8点15分0秒,TIME(17,0,0)对应17点0分0秒,能和J2的时间值正确比较。
方案2:用带双引号的时间文本
把时间放在双引号里,Excel会自动将其解析为时间值,公式更简洁:
=IF(AND(J2>"8:15",J2<"17:00"),"In hours(工作时间)","Out of Hours(非工作时间)")
额外注意事项
如果J2单元格是文本格式的时间(比如输入的是字符串"8:30"而非时间值),需要先用TIMEVALUE函数转换为时间值,公式调整为:
=IF(AND(TIMEVALUE(J2)>TIME(8,15,0),TIMEVALUE(J2)<TIME(17,0,0)),"In hours(工作时间)","Out of Hours(非工作时间)")
内容的提问来源于stack exchange,提问作者Gwen Taylor
相关产品推荐
相关产品推荐

