Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub Macro3()
Dim i As Long
Dim chtTemp As Chart
Dim lngDelay As Long
lngDelay = 10
If Len(Range("D1")) > 0 Then lngDelay = Range("D1")
Range("G1").Select
Set chtTemp = ActiveSheet.ChartObjects(1).Chart
For i = 2 To 1000
Cells(i, 1).Value = Cells(i, 2).Value
DoEvents
Sleep lngDelay
Next i
End Sub
even with very small delay it took a long time to update. and the refresh along with Freeze panes can cause flickering.
try this variation to speed things up by increase the step size
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub Macro3()
Dim i As Long
Dim chtTemp As Chart
Dim lngDelay As Long
Dim lngStep As Long
lngDelay = 10
If Len(Range("D1")) > 0 Then lngDelay = Range("D1")
lngStep = 10
If Len(Range("E1")) > 0 Then lngStep = Range("E1")
Range("G1").Select
Set chtTemp = ActiveSheet.ChartObjects(1).Chart
For i = 2 To 1000 Step lngStep
Cells(i, 1).Resize(lngStep, 1).Value = Cells(i, 2).Resize(lngStep, 1).Value
DoEvents
Sleep lngDelay
Next i
End Sub
Bookmarks