精通excel VBA的高人请进,同一段代码EXCEL2013运行会偶然性停止工作,EXCEL2007 运行一切正常,请解释

Private Sub Worksheet_Change(ByVal Target As Range)On Error Resume NextDim Rng As Range, R As Range, Tmp$Set Rng = Intersect(Target, Columns(2))If Not Rng Is Nothing Then Application.EnableEvents = False With CreateObject("vbscript.regexp") .Global = True .Pattern = "[\u4e00-\u9fa5]" For Each R In Rng If Len(R.Text) Then temp = .Replace(R.Text, "") If IsError(Evaluate(temp)) = False Then R.Offset(, 1).Value = Evaluate(temp) Else If R.Offset(, 3).Value <> "合计" Then R.Offset(, 1).Value = "" End If Next R End With Application.EnableEvents = TrueEnd IfSet Rng = NothingSet R = NothingIf Target.Column = 3 ThenApplication.EnableEvents = False Set Rng = Columns("C:C").SpecialCells(xlCellTypeFormulas, 23) Rng.Offset(, 2) = "合计" If Intersect(Rng, Target) Is Nothing And Target.Offset(, 2) = "合计" Then Target.Offset(, 2) = ""Application.EnableEvents = TrueEnd IfEnd Sub

以上是代码,在2013里运行,任意复制一行数据(见图片),例如A155行,再选中合计行(sum公式求和的 例如A157行) 然后 插入复制的单元格,会出现图片中的错误,2013停止工作了,这种情况是偶然性的,不是每一次都出现,但是只要出现一次,未保存的东西就会丢失了 而2007却一切正常 2013是不是稳定性不行 没有2007好,还是有别的不同的地方导致的?

不要使用2013,不单是执行VBA,经常都会出现这样的情况,有时候就是点个单元格也死。

推荐使用2010版,最稳定、功能最齐的版本。
温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网