代码有问题,出在事件过程上,改为如下即可:(计算过程也可优化,但不是问题的关键)
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column <= 16 Then Application.EnableEvents = False Call 计算 Application.EnableEvents = False End IfEnd Sub