我正在編寫一個代碼,用於在每秒鐘將數據從一個電子表格複製到另一個電子表格。我已經嘗試了Application.Wait和Sleep,但他們阻止了這兩個電子表格,所以我決定使用do until循環。它有效,但1秒持續近2秒,我不知道爲什麼。所以我只留下了代碼中的循環,但測試給出了相同的結果(大約需要95秒)。任何建議?下面是代碼:1秒延遲持續差不多2秒
Sub Test()
Dim Delay As Date
cell = 1
For i = 1 to 60
Workbooks("Data").Worksheets("Sheet1").Range("C" & cell).Value = cell
cell = cell +1
Delay = Now() + TimeValue("00:00:01")
Do Until Now() >= Delay
Do Events
Loop
Next i
End Sub
所以你有循環,你做一些處理,然後等待一秒鐘,可能是你的額外時間是處理?如果先關閉屏幕更新,然後使用'Application.ScreenUpdating = False'將其重新打開,會怎麼樣呢? –