有没有办法用公式做到这一点?

时间:2018-03-26 21:41:26

标签: excel

Input: 0 to 100
for 0 = 100
for 1 = prior value (100) + (50 * 1) = 150
for 2 = prior value (150) + (50 * 2) = 250

在第1列中0到100的表中很容易做到这一点,并且公式采用高于它的值并且将当前索引加上50 *。

这也有效:

如果我想要10的答案,请用A 50填充A1到A10,这个公式给出了正确的答案:

=100+SUMPRODUCT(A1:A10,ROW(A1:A10))

我想弄清楚: 我可以在单个单元格中执行此操作,告诉我给定行的输出吗? 我希望公式查看输入的ref单元格,并提供累计总计50 *索引到该输入,加上100.

2 个答案:

答案 0 :(得分:3)

烨:

在A1中输入100,在A2中输入迭代次数:

=A1+SUMPRODUCT(50*ROW(INDIRECT("1:" & A2)))

enter image description here

答案 1 :(得分:2)

这是一个UDF(用户定义函数)解决方案:

Function myFunc(rng As Range) As Long

    Dim lastRng As Range
    Set lastRng = Cells(rng.Row - 1, rng.Column + 1)

    myFunc = lastRng + (50 * rng.Row)

End Function

然后,您可以在工作表中使用公式=myFunc(A1)