如果iRow高達40,000(注意它總共導致3,720,000個公式......),下面提取的代碼工作正常。我現在需要爲100,000以上的iRow做同樣的事情,如果它完成了,它就會成倍地成爲BAD ...我把PC打開了一天以上,但它沒有。複製目的地方法不適用於大量數據/公式
Dim iRow As LongPtr
Application.ScreenUpdating = False
Application.DisplayAlerts = False
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
WSD.Range("K2:CZ2").Copy Destination:=WSD.Range("K3:CZ" & iRow)
Application.Calculation = xlCalculationAutomatic
Application.Calculation = xlCalculationManual
WSD.Range("K3:CZ" & iRow).Value = WSD.Range("K3:CZ" & iRow).Value
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
Application.DisplayAlerts = True
Application.EnableEvents = True
在這個問題上的任何燈光將非常讚賞。
配置:Excel 2010中的x64 VBA7 WIN64
有你看着Application.WorksheetFunction.Transpose http://msdn.microsoft.com/en-us/library/office/bb239806(v=office.12).aspx – Sorceri
如果您有大量的計算應使用Application.Calculation = xlCalculationManual,以便Excel不會嘗試重新計算您的工作表。只需確保將其設置回xlCalculationAutomatic末尾 – AxGryndr
我確實在粘貼的公式中有很多計算和依賴性。所以,我想保留兩種:公式和格式。意見歡迎。 –