如何在另一列中按条件分组的列中查找下一个日期?
Posted
技术标签:
【中文标题】如何在另一列中按条件分组的列中查找下一个日期?【英文标题】:How to find the next date in one column grouped by criteria in another column? 【发布时间】:2021-10-23 20:25:02 【问题描述】:我被困在如何在 excel 中完成此操作,所以需要一些帮助。
我有两列:ID 和日期
每个 ID 可以有多个日期,因此可以多次列出该 ID。我需要为该 ID 设置另一列,其中包含“下一个最高日期”,如果这是最高日期,则为空白。最终我需要计算两个日期之间的差异。
我已经在谷歌上搜索了一段时间并尝试了一些东西,但似乎没有任何效果。
【问题讨论】:
【参考方案1】:这可以使用 MINIFS 来完成:
MINIFS 部分:
MINIFS($B$2:$B$7,$A$2:$A$7,$A2,$B$2:$B$7,">"&$B2)
通过选择 ID 匹配且日期大于当前日期的最小日期来工作。
MINIFS 周围的 IF 包装器只是用空字符串替换零。
=IF(MINIFS($B$2:$B$7,$A$2:$A$7,$A2,$B$2:$B$7,">"&$B2)=0,
"",
MINIFS($B$2:$B$7,$A$2:$A$7,$A2,$B$2:$B$7,">"&$B2)
)
【讨论】:
谢谢!我正在尝试使用 MINIFS,但没有正确设置它。欣赏! 没问题。我一直认为,当您试图获得比当前日期更高的日期时,使用 MINIFS(而不是 MAXIFS)似乎违反直觉。【参考方案2】:假设 ID 在 A 列,日期在 B 列,第 2 到 11 行输入 10 行,并且您希望最高日期在 C 列,然后输入:
=MAX(IF($A$2:$A$11=A2,$B$2:$B$11))
...然后复制下来。
灵感来自: https://exceljet.net/formula/max-if-criteria-match
【讨论】:
OP 不是要求每一行的下一个最高日期吗?不仅仅是每个 ID 的最大日期。在这种情况下,你可以做=MAXIFS($B$2:$B$11,$A$2:$A$:11,$A2)
以上是关于如何在另一列中按条件分组的列中查找下一个日期?的主要内容,如果未能解决你的问题,请参考以下文章