公式可以自动更新列中的新数据吗?

公式可以自动更新列中的新数据吗?

我正在将日期金额输入到单个列中。然后,最新数据将除以页面顶部的常数。我希望“最新金额”除以“常数”的公式在我输入新数据时自动更新。

以下是我所指的简单设置:

示例工作表

我现在的公式是=(B5/$D$2)

然后,当我将数据添加到 B6 时,我必须手动更改公式来反映这一点。

当我向 B6、B7 等添加数据时,公式是否可以自动调整?

为了清楚起见进行编辑:我希望公式仅根据单元格位置进行调整,与修改时间/日期无关。

答案1

如果你只是希望它(按照你的例子)基于 B 列中的最后一个值,你可以使用

=LOOKUP(2,1/(NOT(ISBLANK(B:B))),B:B)

所以你的公式就是

=(LOOKUP(2,1/(NOT(ISBLANK(B:B))),B:B))/$D$2

这有很多问题,如果你在 B 列中途做出了更改,那么你仍然需要手动进行!

如果你希望它根据你编辑的最近一行触发,那么你需要使用 VBa 的Worksheet_Change事件

Private Sub Worksheet_Change(ByVal Target As Range)
    If (Target.Column = 2) Then
        Range("E2").Value = Range("D2").Value / Target.Value
    End If    
End Sub

如何在 MS Office 中添加 VBA?

请记住,VBa 无法撤消,因此请先备份并确保将文件保存为启用宏的文件。

答案2

你可以使用这个:

=INDEX(B:B,MATCH(1E+99,B:B))/$D$2

INDEX/MATCH 将返回 B 列最后一个单元格中包含数字的值。因此,当 B 列中添加数字时,引用将自动更改为最后一个数字。

在此处输入图片描述

相关内容