Shakkthi
2021-04-12T08:51:20+00:00
[img]https://img.nga.178.com/attachments/mon_202104/21/-7Q16v-i8r3K9ToS4d-31.jpg.medium.jpg[/img]
如图,AA在上一次出现是半年之内,合格。
而bb上一次出现是在半年之前,不合格。
这个函数要怎么写[s:ac:汗]
这个有没有大佬知道怎么弄[s:ac:哭1] 是用IF函数吗
[quote][pid=509785288,26425183,1]Reply[/pid] Post by [uid=42666314]别喝这么多[/uid] (2021-04-21 17:10):
这个有没有大佬知道怎么弄[s:ac:哭1] 是用IF函数吗[/quote]时间可以换算成一个数字。先换算成数字再用if。
貌似这样。
直接单元格改成数字格式就行,新建一列等于过去试试看
自定义排序,主条件姓名,副条件日期降序。这样每个人的第一条时间就是最后一次出现的时间。然后从在新一列从上到下判断,名字和上一行相同且时间超过半年的行判不合格
[quote][tid=26425183]Topic[/tid] Post by [uid=42666314]别喝这么多[/uid] (2021-04-21 17:00):
[img]https://img.nga.178.com/attachments/mon_202104/21/-7Q16v-i8r3K9ToS4d-31.jpg.medium.jpg[/img]
如图,AA在上一次出现是半年之内,合格。
而bb上一次出现是在半年之前,不合格。
这个函数要怎么写[s:ac:汗][/quote]加辅助列,记录as bb 上次日期,然后就是简单if 和datedif 两个函数判断力了
=IF(AND((B:B="AA"),(TODAY()-A1<=180)),"合格",IF(AND((B:B="BB"),(TODAY()-A1>180)),"合格","不合格"))
随手写了个 没测试 你试试看
[img]https://img.nga.178.com/attachments/mon_202104/21/-7Q16v-88zrK1cT3cSnm-7q.png[/img]
=IF(DATEDIF(INDEX(A:A,MAX(IF(B$2:B8=B9,ROW($2:8),0))),A9,"d")<180,"合格","不合格")
这个公式略微复杂,而且还是数组公式,你可能不会改[s:ac:呆]