如何让EXCEL单元格实现数字累加

来源:百度知道 编辑:UC知道 时间:2024/05/10 16:42:05
若单元格A1当前的数是10,后来我在该单元格中输入5,正常情况下该单元格的数值改变为5,请教如何能让这个单元格实现累加功能,使结果为单元格以前数10+后来输入的数5,结果为15。

需要使用vba
假设要输入数据的是sheet1,我们利用sheet2作为存放临时数据的工作表。
右击sheet1标签》查看代码
将下面的代码粘贴至右侧窗口即可实现你要的效果。

Private Sub Worksheet_Change(ByVal Target As Range)
'Sheets("sheet2").Visible = xlSheetVeryHidden '将sheet2设置为隐藏。若要此句生效,取消语句开始出的'即可。
Application.EnableEvents = False
For Each c In Target.Cells
With c
.Value = Sheets("sheet2").Range(.Address) + .Value
Sheets("sheet2").Range(.Address) = .Value
End With
Next
Application.EnableEvents = True
End Sub

BTW:不建议这样累计数字,因为这样做的话误操作将无法进行核对。而且误操作通常都是在不自知的情况下发生的,例如将1000000输成了100000。

EXCEL是二维表格处理软件,通俗地说,EXCEL的数据是"平铺"在表格上的,表格象一个平面.你说的这个情况,恰恰是要在EXCEL表格的某一个点(即单元格)上作叠加运算,是三维运算的概念,这是EXCEL的弱项.可以实现,但很麻烦.
建议你用WINDOWS计算器,再把计算结果粘贴到表格上来.

据我高级操作员的经验来说,不可能做到滴。。
只能覆盖原先的记录。

一个单元格可以做到,多个会有许多错误出现,因为excel对这种情况叫做循环计算,虽然可将循环计算设置为1