文章編號: 282830 - 上次校閱: 2007年6月8日 - 版次: 4.1

以程式設計方式存取 Office VBA 專案遭到拒絕

在此頁中

全部展開 | 全部摺疊

徵狀

編寫用於自動化 Office 應用程式並以程式設計方式操作 Microsoft Visual Basic for Applications (VBA) 環境和物件模型的程式碼,可能會在 Office 上失敗,並且出現下列其中一個錯誤訊息:

在 Visual Basic 或 VBA 中:
執行階段錯誤 '6068': 對於 Visual Basic 專案的程式化存取未信任
在 Microsoft Visual C++、Microsoft Foundation Classes (MFC) 或 ActiveX Template Library (ATL) 中:
HRESULT = 0x800A17B4 (-2146822220) "對於 Visual Basic 專案的程式化存取未信任"
相同的程式碼可以用於執行 Office 97 和 Office 2000 的電腦,而且沒有錯誤。

發生的原因

Office 新增了安全性選項,可限制任何自動化用戶端以程式設計方式存取 VBA 物件模型,除非使用者選擇允許此類存取。這是依照每位使用者和每個應用程式而執行的設定,預設為拒絕存取。

這個安全性選項可讓未經授權的程式更難以建置能破壞使用者系統的「自我複寫」程式碼。

解決方案

對於能夠以程式設計方式存取 VBA 物件模型的自動化用戶端,執行此程式碼的使用者必須明確地授與存取權限。如果要啟用存取,使用者必須依照下列步驟執行。

Office 2003 和 Office XP

  1. 開啟有問題的 Office 2003 或 Office XP 應用程式。在 [工具] 功能表上,按一下 [巨集],然後按一下 [安全性] 以開啟 [巨集安全性] 對話方塊。
  2. [信任的來源] 索引標籤上,按一下以選取 [信任存取 Visual Basic 專案] 核取方塊以啟用存取。
  3. 按一下 [確定] 以套用設定。如果您從「元件物件模型」(COM) 增益集或範本進行自動化,可能需要重新啟動應用程式,才能讓程式碼正確地執行。

Office 2007

  1. 開啟有問題的 2007 Microsoft Office system 應用程式。按一下 [Microsoft Office 按鈕],然後按一下 [Application 選項]
  2. 按一下 [信任中心] 索引標籤,然後按一下 [信任中心設定]
  3. 按一下 [巨集設定] 索引標籤,按一下以選取 [信任存取 VBA 專案物件模型] 核取方塊,然後按一下 [確定]
  4. 按一下 [確定]

這篇文章中的資訊適用於:
  • Microsoft Office Excel 2007
  • Microsoft Office Excel 2003
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Office PowerPoint 2007
  • Microsoft Office PowerPoint 2003
  • Microsoft PowerPoint 2002 Standard Edition
  • Microsoft Office Word 2007
  • Microsoft Office Word 2003
  • Microsoft Word 2002 Standard Edition
關鍵字:?
kbautomation kbprb KB282830
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。
 

文章翻譯