我正在將數據從一個工作簿複製並粘貼到另一個工作簿。不幸的是,我對我的運行時間不滿意。特別是我的代碼的這部分需要很多時間。你有任何想法來減少運行時間嗎?Excel VBA減少運行時間
Function CopyData()
sws.Activate
Range("C4:GF4").Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
tws.Activate
Range("A12").Select
ActiveSheet.Paste
Range("D12:GD12").Select
Range(Selection, Selection.End(xlDown)).Select
Application.CutCopyMode = False
Selection.Copy
Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
:=False, Transpose:=False
End Function
目前需要多長時間?你有沒有嘗試過嗎?這看起來不會花很長時間。還有其他原因嗎? – L42
您是否在粘貼之前嘗試使用'application.calculation = xlmanual'?之後不要忘記將其切換回自動。其實你是粘貼它作爲價值觀,但我認爲可能有其他公式在工作表中使用這些值。 – Dubison
一般來說,使用'Select'會減慢你的代碼,因爲你正在改變Excel表格。防止這種放慢代碼速度的第一步是在函數的開頭部署Application.ScreenUpdating = False。 – EngJon