我有一個宏,它通過excel文件路徑列表循環。宏將讀取每個路徑,打開工作簿,從每個工作簿中複製/提取各種數據,然後將數據粘貼到中央工作簿中。有大約2000個文件路徑需要循環訪問。正如你所看到的,這是一個非常簡單的宏。它運行得很好。但是,運行一段時間(也許在通過前70個文件路徑循環後),excel會一直掛在我身上(它顯示打開文件時出現的「下載」消息框)。如果我單擊msg框上的取消,工作簿仍然打開並且宏按正常方式繼續。但隨着這些「下載」消息框不斷彈出,我將不得不坐在這裏,爲超過1000個更多的文件路徑保留宏。有誰知道爲什麼excel卡在這裏?有沒有辦法解決它?打開excel文件時VBA掛起
甚至更奇怪的是,這個懸掛的消息框並不會發生在每個Workbook上。打開實例,它只發生在每隔幾個。
這裏是我使用的代碼示例:
With ThisWorkbook.Sheets("Filepaths")
For i = firstrow To lastrow
SourceFile = .Cells(i, 1).Value
Workbooks.Open SourceFile, ReadOnly:=True
Set MyFile = Workbooks(Workbooks.Count)
..more code..........
..more code..........
..more code..........
MyFile.close
Next i
End With
感謝您的意見,這些都是很好的點(而且這兩種解決方案,我相信我已經在過去嘗試過)。但只是爲了檢查,我已經修改了我的Workbooks.Open線這樣的:
Application.DisplayAlerts = False
Workbooks.Open SourceFile, ReadOnly:=True, UpdateLinks:=False
Application.DisplayAlerts = True
但問題仍然彈出...
什麼奇怪的是,當我通過線直通一步..線當我經過「Application.DisplayAlerts = False」行後,當我將鼠標懸停在「Application.DisplayAlerts」變量上時,它仍然表示正確?!
(而你在它和'ScreenUpdating')也許關掉'Application.DisplayAlerts'會有所幫助。 –
你不能'Application.DisplayAlerts = False'? – Tyeler
某些工作簿中可能無效的外部鏈接? –