目标是把时间转换成上午/下午/晚上,原始数据抽样如下:
时间(只要是时间格式,啥数据都行) | 时间_new(这是新增列,暂时为空) |
9时52分 | |
1时04分 |
转换逻辑为:
6-13点算上午,13-17点算下午,其余时间算晚上。所以自然而然就想到用IF函数,由于是三种情况,所以需要一个嵌套if。
最后函数写法如下:
=IF(AND(TIME(HOUR(D3),,)<TIME(13,,),TIME(HOUR(D3),,)>TIME(5,,)),"上午",IF(AND(TIME(HOUR(D3),,)<TIME(17,,),TIME(HOUR(D3),,)>TIME(13,,)),"下午","晚上"))
如果你想可怜下孩子,可以往下看我花了40多分钟经历的一些bug:
1.Excel里别用&!!人家的函数蛮多的,直接用AND( , )。
2.时间相关函数:要取TIME(HOUR(),,)来取单元格的小时数据,EXCEL未解之谜——为啥用HOUR(单元格)得到的结果第一次没问题,但是后来就#value,是我的问题,一定不是EXCEL疯了。