软件:EXCEL 版本:2010 Sub n() For i = 1 To 999999 If ActiveCell > 20 Then Exit For ActiveCell.Offset(1).Select Next End Sub Sub y() Do Until ActiveCell > 20 ActiveCell.Offset(1).Select Loop End Sub 这两种写法的效果是一样 但我不确定我的想法对不对 Q1:因为sub n有使用到变量i 所以会逐渐占用较大内存而降低效率 Q2:假如在end sub前面加一个Set i = Nothing 最后会使两种宏又恢复相同状况 Q3:假设Q2为正确 虽然最后释放变量了 但过程中还是有占用内存 所以还是Do Until的过程效率较好 非科班出身 还在摸索中 还请指教 谢谢