如何改变NPV公式中使用的范围?



=NPV(D2,B3:B & C2(

我在单元格 B2 中有一个 NPV 公式。利率在D2。我希望公式使用的范围随 C2 中的任何值而变化。即如果 C2 = 362 中的值,公式应该是 =NPV(D2,B3:B362( 我试图如上所述连接,但这是错误的。如何改变净现值公式中的范围?

最好使用偏移量来完成此操作,它允许您定义一系列单元格:

offset(base_cell, row_offset, col_offset, height, width)

在您的情况下,您应该使用:

npv(d2, offset(b3, 0, 0, C2 - 3, 1))

注意:您应该使用 Ctrl-Shift-Enter 输入此函数,以便 Excel 知道它是一个数组函数。

第二种可能但不建议在您的情况下使用的方法是使用间接方法。这会将字符串更改为单元格引用。

npv(d2, indirect("b3:b"&c2))

同样,您需要将其作为数组公式输入。这种方法可能看起来更好,但它更难维护,并且可能效率较低,因此您应该习惯于偏移。

使用 INDIRECT 函数根据字符串选择单元格。 https://support.office.com/en-us/article/indirect-function-474b3a3a-8a26-4f44-b491-92b6306fa261

=NPV(D2, B3:INDIRECT("B"&C2))

OFFSETINDIRECT都是volatile functions的,因此应尽可能避免使用。因此,我更愿意:

=NPV(D2,B3:INDEX(B:B,C2))

问候

最新更新