您好我有这个Excel文件:
Date GBP_S(t) A
27/12/88 1,80400
28/12/88 1,78900
29/12/88 1,78950
30/12/88 1,80850
2/01/89 0,00000
3/01/89 1,82250
4/01/89 1,80700
5/01/89 1,79700
6/01/89 1,78000
9/01/89 1,76360
10/01/89 1,76370
11/01/89 1,78100
12/01/89 1,78400
13/01/89 1,77870
16/01/89 0,00000
17/01/89 1,76800
18/01/89 1,75450
19/01/89 1,75000
20/01/89 1,76850
23/01/89 1,77400
24/01/89 1,76770
25/01/89 1,77100
26/01/89 1,77350
27/01/89 1,75800
30/01/89 1,76180
31/01/89 1,75000
1/02/89 1,75350
2/02/89 1,75080
3/02/89 1,74150
6/02/89 1,73270
7/02/89 1,74250
8/02/89 1,74330
9/02/89 1,75480
10/02/89 1,75430
13/02/89 1,74950
14/02/89 1,76850
15/02/89 1,77330
16/02/89 1,77080
17/02/89 1,77600
20/02/89 0,00000
21/02/89 1,75020
22/02/89 1,75050
23/02/89 1,76000
24/02/89 1,75300
27/02/89 1,74480
28/02/89 1,74400
1/03/89 1,72400
2/03/89 1,72380
3/03/89 1,72300
6/03/89 1,72200
7/03/89 1,72170
8/03/89 1,71970
9/03/89 1,71750
10/03/89 1,71550
13/03/89 1,71150
14/03/89 1,72720
15/03/89 1,71900
16/03/89 1,71790
17/03/89 1,71300
20/03/89 1,71030
21/03/89 1,72000
22/03/89 1,72280
23/03/89 1,72180
24/03/89 1,71900
27/03/89 1,71000
28/03/89 1,68800
29/03/89 1,68860
30/03/89 1,68750
31/03/89 1,68520
3/Apr/89 1,68600
...
我正在尝试构建一个简单的VlookUp函数,但它无法正常工作。 我想要一个procv函数,它给我第三列(A)每个月的最后一个值o Date列。
所以:A1 = 1,80850; A2 = 1,75000;等等...
有任何帮助吗? 非常感谢。
答案 0 :(得分:3)
我个人会在这个例子中使用辅助列:
在C2中提出以下内容:
=IF(MONTH($A2)<>MONTH($A3),MAX($C$1:$C1)+1,"")
并复制数据的长度
这将在与每个月的最后一个记录日相同的行上增加一个数字。
然后你可以在INDEX / MATCH中使用该列来返回每个月末的值:
=IFERROR(INDEX(B:B,MATCH(ROW(1:1),C:C,0)),"")
然后复制,直到你得到空单元格。
如果你想要一个公式:
=IFERROR(INDEX($B$2:$B$194,AGGREGATE(15,6,(ROW($A$2:$A$193)-1)/(MONTH($A$2:$A$193)<>MONTH($A$3:$A$194)),ROW(1:1))),"")
它使用上表中的数据。这有点难以理解。