Excel精英培训网

 找回密码
 注册
数据透视表40+个常用小技巧,让你一次学会!
查看: 2422|回复: 5

[已解决]任意顺序求某物料的最后失效日期

[复制链接]
发表于 2015-8-14 17:01 | 显示全部楼层 |阅读模式
本帖最后由 f13145205920 于 2015-8-14 20:20 编辑

鼓捣了很久,只弄出要特定顺序的公式,任意顺序总鼓捣不出来,求帮助。
具体请看附件
将D列最近的失效日期列出来,之前的则显示为历史,G-I列是自己弄的,但需要特定顺序才能得到正确结果,想要任意顺序就可以得到正确结果的公式。

公式比较简单的正解有三:
1、=IF(COUNTIFS($A$2:$A$21,A2,$D$2:$D$21,">"&D2),"历史",D2)  
2、=IF(SUM(($A$2:$A$21=A2)*($D$2:$D$21>D2)),"历史",D2) 数组公式
3、=IF(SUMPRODUCT(($A$2:$A$21=A2)*($D$2:$D$21>D2)),"历史",D2)


最佳答案
2015-8-14 17:30
  1. =IF(COUNTIFS(A:A,A2,D:D,">"&D2),"历史",D2)
复制代码

任意顺序求最近日期.rar

198.15 KB, 下载次数: 3

发表于 2015-8-14 17:10 | 显示全部楼层
回复

使用道具 举报

 楼主| 发表于 2015-8-14 17:13 | 显示全部楼层
蝶·舞 发表于 2015-8-14 17:10
你想实现什么效果?

将D列最近的失效日期列出来,之前的则显示为历史,G-I列是自己弄的,但需要特定顺序才能得到正确结果,想要任意顺序就可以得到正确结果的公式。
回复

使用道具 举报

发表于 2015-8-14 17:30 | 显示全部楼层    本楼为最佳答案   
  1. =IF(COUNTIFS(A:A,A2,D:D,">"&D2),"历史",D2)
复制代码

评分

参与人数 1 +3 收起 理由
f13145205920 + 3

查看全部评分

回复

使用道具 举报

 楼主| 发表于 2015-8-14 19:52 | 显示全部楼层
蝶·舞 发表于 2015-8-14 17:30

{:011:}自己用一堆函数,解决不了,结果却是如此简单……
回复

使用道具 举报

 楼主| 发表于 2015-8-14 20:23 | 显示全部楼层
蝶·舞 发表于 2015-8-14 17:30

=IF(COUNTIFS($A$2:$A$21,A2,$D$2:$D$21,">"&D2),"历史",D2)
虽然,我后来又想到用Sum数组和Sumproduct来替代Countifs,但其实,我还是没弄明白,IF的第一个参数只是一个计数,然后就可以返回正确结果。
是IF的高级用法?望有空的时候帮解释一下,或者给点资料看下。谢谢。
看来我得花时间再深入学习一下IF函数
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|Excel精英培训 ( 豫ICP备11015029号 )

GMT+8, 2024-5-19 15:42 , Processed in 0.335085 second(s), 14 queries , Gzip On, Yac On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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