从一个单元格添加值到另一个单元格,然后重置单元格值 高强

希望有人能回答我们。

我们想要做到以下几点:

当在A1中input一个值时,这个值被加到B1的值上。

然后我们要A1的值重置为0,但保留B1的值

这可能在Excel中?

在工作表的VBA专用模块上(右键单击报告选项卡并点击“查看代码”),input以下代码:

Private Sub Worksheet_Change(ByVal Target As Range) Application.EnableEvents = False If Target.Address = Range("a1").Address Then Range("b1") = Range("b1") + Range("a1") Range("a1").ClearContents End If Application.EnableEvents = True End Sub 

每当对工作表进行更改时,都会调用Worksheet_Change

Application.EnableEvents=False阻止代码连续运行(没有它,对B1的更改也会调用Worksheet_change)。

此代码假定B1中的值始终是数字(或空白)。 如果它可能包含字符文本,那么将需要进行检查以重置其值或不执行增量。

使用simoco的build议:

 Private Sub Worksheet_Change(ByVal Target As Range) Dim A1 As Range Set A1 = Range("A1") If Intersect(Target, A1) Is Nothing Then Else Application.EnableEvents = False With A1 .Offset(0, 1) = .Offset(0, 1) + .Value .ClearContents End With Application.EnableEvents = True End If End Sub