簡體   English   中英

工作簿打開緩慢

[英]Slow Workbook_Open event

我有一個工作簿,由於在workbook_open事件中運行了許多宏,因此需要6秒鍾以上的時間才能打開。

我想加快速度,所以我使用了一個計時器來測試在啟動和運行時打開工作簿時代碼的不同部分。 在這兩種情況下,所有部分都需要花費相同的時間才能運行,但以下部分除外:

Dim ATime As Double
Dim BTime As Double

ATime = timer

Dim b As Long
For b = 5 To 268
    If Sheets("Orders").Range("F" & b) = "Locked" Then
        Sheets("Orders").Range("C" & b).Locked = True
        Sheets("Orders").Range("D" & b).Locked = True
        Sheets("Orders").Range("E" & b).Locked = True
    End If
Next

BTime = timer
MsgBox "1. " & Format(BTime - ATime, "0.00 \s\ec")

在workbook_open運行時:2.78秒。 在工作簿中手動運行時:0.01秒。

這里有什么問題?

嘗試:

With Sheets("Orders")
    For b = 5 To 268
        .Range("C" & b).Resize(1, 3).Locked = (.Range("F" & b) = "Locked") 
    Next
End With

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM