2015-11-25 85 views
0

我有一個從另一個Excel文件讀取數據的宏。如果該文件已被用戶打開,Excel會嘗試重新打開該文件 - 目前爲止這很好。運行時錯誤'1004'此文件已在受保護的視圖中打開

但是,如果文件在受保護的視圖中打開,然後在這行宏停止:

Workbooks.Open Filename:=Sheets("Control Sheet").Range("C6").value 

出現錯誤:

Run-time error '1004' This file is already open in Protected View 

我該如何解決這個問題?

+1

,因爲你只是從文件中讀取數據,你可以設置只讀參數爲True'Workbooks.Open文件名:=表(「控制表」)範圍(「C6」)。值,ReadOnly:= True' –

回答

0

對於讀書,我建議斯科特·霍爾茨曼的解決方案:

Workbooks.Open Filename:="FileName", ReadOnly:=True 

對於其他情況下,你可以通過刪除保護模式:

Do While Application.ProtectedViewWindows.Count > 0 
    Application.ProtectedViewWindows(1).Edit 
Loop 
相關問題