同样代码,速度天差地别是咋回事?

同一台电脑,同样的文件,同样的数据,代码都是复制过去的,结果跑起来一个快一个慢,简直不讲科学。
我的想法是Excel里面统计数据,根据统计的数量用宏判断匹配哪个值,因为数据也就一百多个,所以照理不至于卡呀……

—————
刚发现一个问题,按住f8连续单不执行比自动运行还快,结束调试需要按两次esc,不知道是啥原因…继续在线等


Sub 自动填名()
'当前列填充
Dim lie
Dim xm
Dim hang
Dim hang1
hang = Cells(Rows.Count, 1).End(xlUp).Row
hang1 = Cells(Rows.Count, 18).End(xlUp).Row
lie = Split(ActiveCell.Address, "$")(1)
For i = 1 To hang
    For j = 2 To hang1
        If Range(lie & i) = "" Then
            If Range(lie & i).Offset(0, -1) <> emtpy Then
            xm = Range("r" & j)
            Range(lie & i) = xm
            Range(lie & i).Select
            Selection.Copy
            Range("I2").Select
            ActiveSheet.Paste
                If Range("q2") <> 0 Then
                Range(lie & i).Select
                Selection.ClearContents
                End If
            End If
        End If
    Next
    If Range(lie & i) = "" Then
    MsgBox ("已添加人员时间均冲突,请继续添加人员")
    Exit Sub
    End If
  Next
End Sub

运行的速度跟环境有关,比如内存分配的快慢就跟碎片多少有关.