在该列中查看和最后一个值

我正在试图find以下的Excel公式:

我有一个包含每周薪资成本的电子表格。 第1行有各种支付要素,包括Gross Pay一列。

我已经将Wk_40作为命名范围分配给所有数据。

在汇总表上,我使用HLOOKUP公式来查找Gross Pay ,然后对于row index number ,我想select该列的最后一行。

例如,总薪酬在M列中,而第427行总共包含该列。 在#430行,如果这个星期跨越两个月,我已经按比例计算了。 我想从#430行中select金额。

我试过了

 =hlookup($F$42,Wk_40,MATCH(9.99999999999999E+307),false) 

但是这是返回#N/A

对我来说,你似乎并不了解HLOOKUP是如何工作的。 尝试使用这个:

 =HLOOKUP("Gross Pay",Wk_40,430,FALSE) 

这将在指定范围内查找Gross Pay (假设它涵盖从第1行到第430行,并且在第1行的某个位置具有Gross Pay列)。

430是从中提取所需信息的行。

注意:

  • 你也可以使用0而不是FALSE ,因为它们在Excel中意味着相同的东西。

  • 我在公式中使用了"Gross Pay" ,因为我不确定F42包含了什么(在你的问题中你没有提到它,直到公式)。 如果它有Gross Pay ,那么它应该与F42一起工作。


如果@simico理解正确,那么你可以使用INDEXMATCH来获得Gross Pay列中的最后一个值:

 =HLOOKUP("Gross Pay",Wk_40,MATCH(9^99,INDEX(Wk_40,0,MATCH("Gross Pay",INDEX(Wk_40,1,0),0))),0) ^--------------------------------------------------------------^ 

MATCH(0,INDEX(Wk_40,1,0),0)得到Gross Pay的列号。

INDEX(Wk_40,0,MATCH("Gross Pay",INDEX(Wk_40,1,0),0))然后返回整个列。

MATCH(9^99,INDEX(Wk_40,0,MATCH("Gross Pay",INDEX(Wk_40,1,0),0)))然后给出包含一个值的最后一个单元格。

用这个,你可以在正确的列中得到正确的行号……然后用索引和一个非常大的公式得到结果:

 =MATCH(9.99999999999999E+307;INDEX(Wk_40;0;MATCH("Gross Pay";INDEX(Wk_40;1;0);0));1) 

喜欢这个:

 =INDEX(Wk_40;MATCH(9.99999999999999E+307;INDEX(Wk_40;0;MATCH("Gross Pay";INDEX(Wk_40;1;0);0));1);MATCH("Gross Pay";INDEX(Wk_40;1;0))) 

假设Wk_40包含所有数据,Wk_40的第一行包含标题,您可以在其中find“Gross Pay”。 而且,当然,除了标题,你只有数值。