我正在尝试为以下内容找到Excel公式:
我有一张每周工资单费用的电子表格。第1行包含各种付款元素,包括列Gross Pay
。
我已将Wk_40
指定为所有数据的命名范围。
在摘要表格中,我使用HLOOKUP
公式查找Gross Pay
,然后使用row index number
,我想选择该列的最后一行。
例如,总薪水位于列M
中,而行#427则具有该列的总计。在第430行中,如果一周跨越两个月,我已按比例计算。我想从#430行中选择金额。
我试过
=hlookup($F$42,Wk_40,MATCH(9.99999999999999E+307),false)
但这将返回#N/A
。
答案 0 :(得分:1)
对我而言,似乎您似乎并不了解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理解正确,那么您可以使用INDEX
和两个MATCH
来获取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)))
然后给出包含值的最后一个单元格。
答案 1 :(得分:1)
通过这个,您可以在正确的列中获得正确的行号...然后使用索引和非常大的公式,您将得到结果:
=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的第一行包含标题,您可以在其中找到“总薪酬”。当然,除了标题之外,您只有数字值。