如果您想避免VBA,可以使用循环引用来实现此目的。以下解决方案适用于以下方案:
- 您将数据放入单元格A2(您可以更改此内容)
- 您永远不会输入值
- 你永远不会连续两次输入相同的值
- 平均值将显示在B2中(您可以更改此内容)
- 您只需存储20个值(可以扩展此值)
- 历史记录存储在C2:C21(您可以扩展此)
醇>
(如果你 在行中两次输入相同的值,你甚至无法使用VBA轻松实现这一点,而无需每次都添加需要手动按下的按钮,因为VBA需要看到价值的变化才能知道它何时被更新。)
要进行此设置,请按以下步骤操作:
- 启动前确保单元格A2为空
- 转到文件>选项>公式并勾选右上角的启用迭代计算(这允许循环引用)
- 将此公式放入B2:
=AVERAGEIF(C2:C21,">0")
- 将标题放入C1,例如"历史"
- 将此公式放入C2:
=IF($A$2=0,0,IF(AND(C2=0,C1<>0,C1<>$A$2),$A$2,C2))
- 将公式填入C21
醇>
您现在可以开始在A2中输入值,每个新值都会自动添加到列表中。
要重置列表,请将0放入A2