2016-06-24 43 views
0

喜的最后一个值我有这个Excel文件:VLOOKUP给每个月

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)上给出了每个月份的最后一个值。

因此:A1 = 1,80850; A2 = 1.75万;等等...

任何帮助吗? 非常感谢。

+1

(FYI“Procv”是葡萄牙语“VlookUp”) – BruceWayne

+0

谢谢布鲁斯。编辑。 – Laorie

+0

大声笑在这个问题后brexit XD – findwindow

回答

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)),"") 

抄下,直到你得到空单元格。

enter image description here


如果你想这一切在一个公式:

=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))),"") 

它从上面的表使用的数据。这有点难以理解。

+0

@Laorie - 我同意斯科特。没有办法用我知道的股票公式表达你想要的东西(不使用帮手列)。另外,从我的经验来看,任何一种用于查找的自定义VBA函数都会有非常糟糕的性能。 – JamesFaix

+0

@JamesFaix见编辑。一个公式。如果是我,我会使用一种配方的方法,但发现它打开更多的问题,而不是像这样的网站上的帮助。 –