需要更快地计算数据

我正在努力与这个代码,请帮助我。 我想logging在这个代码中的变化,但是它逐渐变成单元格,使得它变慢。 我的活动工作表运行200毫秒,这是非常快的代码时,它的工作价值改变。 有没有什么方法可以同时显示数值,而不是去每个单元格。 如果我的请求没有任何意义,请你原谅我的思想混乱。

Private Sub Worksheet_Change(ByVal Target As Range) Const Scope = "G9:H9,G11:H11,G13:H13,G15:H15,G17:H17,G19:H19,G21:H21,G23:H23,G25:H25,G27:H27,G29:H29,G31:H31,G33:H33,G35:H35,G37:H37,G39:H39,G41:H41,G43:H43,G45:H45,G47:H47,G49:H49,G51:H151,G53:H53,G55:H55,G57:H57,G59:H59,G61:H61,G63:H63,G65:H65,G67:H67" ' monitoring area Static oData As New Dictionary Dim rCells As Range Dim oCell Dim dDelta Set rCells = Application.Intersect(Target, Target.Parent.Range(Scope)) If Not rCells Is Nothing Then For Each oCell In rCells With oCell dDelta = oData(.Address) .Offset(0, 1).Value = dDelta oData(.Address) = .Value End With Next End If 

结束小组

你有没有试过closures屏幕更新? 在你的Sub行下面加上这行,看看是否对速度有所帮助。

 Application.ScreenUpdating = False