看了学妹的问题,感觉问题还是出现数据的输入合法性上面。
首先单元格格式设置为时间时分格式,当输入0:20这样的合法数据时,B列的公式判断正确,所以结果亦正确。
当输入24:20这样的非法数据时,因为时间只有0点至23点,所以系统会将时间自动按24小时制转换过来,但单元格中的实际数据前面多了年月日,比如输入24:20回车后变成"1900-1-1 0:20:00"。
显然公式的判断并没有错,是判断条件写的不够严谨所致。
如果将B列中的公式修改如下再复制到B列其它行,判断就严谨了:
=IF(AND(TIME(HOUR(D11),MINUTE(D11),0)>TIME(0,0,0),TIME(HOUR(D11),MINUTE(D11),0)<TIME(7,50,0)),A11+1,A11)
。