Excel 2010 公式显示表(日期列表)中最早的日期和值(在分配给每个唯一 ID 的参考日期之后)

问题描述 投票:0回答:1

我的这个公式不太正确。 这个问题最好的例子是在单元格

C5
:

=IF(MAX(IF(F5:F15=$A5,G5:G15))<$B5,"",SUMIFS(H5:H15,F5:F15,$A5,G5:G15,MIN(IF(F5:F15=$A5,G5:G15))))

它正在查找最早的值,但不是 B 列中参考日期之后的最早值。它显示的值为 0.1,但我需要它显示为 2。因为这是在参考日期当天或之后。

我还需要对 D 列中的日期进行相同的操作,它将与相邻值对齐,以便 C 列和 D 列中的左表显示右表中最早的日期和值,其中 ID 匹配并且位于每个 ID 的每个参考日期之后。

这可以用公式实现吗?

enter image description here


F 至 G 栏:

id 活动日期 价值
1 2024 年 3 月 8 日 200
3 2024 年 3 月 5 日
3 2021 年 2 月 5 日 300
25 2024 年 7 月 16 日 72
25 2024 年 4 月 22 日 50
7825 2024 年 7 月 17 日
7825 2024 年 7 月 16 日 2
7825 2024 年 7 月 15 日 0.9
7825 2024 年 6 月 17 日 0.7
7825 2005年9月6日 0.1
23250 2024 年 4 月 8 日 0.2

A 至 D 列

身份证 参考日期 价值 活动日期
1 2024 年 3 月 8 日
3 2024 年 3 月 7 日
25 2024 年 4 月 22 日
7825 2024 年 7 月 16 日
23250 2024 年 4 月 8 日
excel excel-formula excel-2010
1个回答
0
投票

请尝试使用以下公式:

enter image description here


=INDEX($G$2:$H$12,MATCH(1,1/(($G$2:$G$12<=$B2)*($A2=$F$2:$F$12)),0),{2,1})

退出编辑模式时请确保按CTRL+SHIFT+ENTER


enter image description here


或者,对于价值观,

=INDEX(H$2:H$12,MATCH(1,1/(($G$2:$G$12<=$B2)*($A2=$F$2:$F$12)),0))

对于日期,

=INDEX(G$2:G$12,MATCH(1,1/(($G$2:$G$12<=$B2)*($A2=$F$2:$F$12)),0))

© www.soinside.com 2019 - 2024. All rights reserved.