嘗試開啟或儲存 Excel 活頁簿時,會要求您在 Microsoft Office Online 上搜尋「VBA 轉換程式」

文章翻譯 文章翻譯
文章編號: 926430 - 檢視此文章適用的產品。
全部展開 | 全部摺疊

在此頁中

徵狀

當您嘗試在 Microsoft Excel 中開啟活頁簿時,您可能會收到下列錯誤訊息:

開啟此檔案中的 VBA 專案需要目前尚未安裝的元件。將會在不使用 VBA 專案的情況下開啟這個檔案。如需詳細資訊,請在 Microsoft Office Online 搜尋「VBA 轉換程式」。


當您嘗試在 Excel 中儲存活頁簿,其包含 Microsoft Excel 5.0/95 活頁簿檔案格式 (*.xls) 的 VBA 專案時,會收到下列錯誤訊息:

在 Excel 5.0/95 中的檔案格式儲存此活頁簿的 VBA 專案需要目前尚未安裝的元件。您是否要繼續以此格式儲存?
  • 按一下 [是] 以保留此格式,並且不儲存 VBA 專案。
  • 按一下 [否],以最新的 Excel 格式儲存此檔案。
若要以 Excel 5.0/95 格式儲存 VBA 專案,請在 Microsoft Office Online 搜尋「VBA 轉換程式」。

發生的原因

您試圖開啟的活頁簿中包含會寫入 Excel 5.0/95 模組工作表的巨集。當您嘗試儲存成 Excel 5.0/95 中的檔案格式的活頁簿時,Excel 2007、 Excel 2010 和 Excel 2013 無法寫入 Excel 5.0/95 模組工作表的格式。而 Excel 2007 和較新的執行不直接支援的作者使用 Excel 5.0/95 中的 VBA 巨集轉換時,就會發生這些問題。

解決方案

有兩個步驟來解決這個問題。

步驟 1:取得 VBA 轉換程式套件

VBA 轉換程式套件並非 Microsoft Office 套件所包含的一部分。在這份文件的頂端,按一下 [取得 VBA 轉換程式套件的檢視,並要求 hotfix 下載]。您接受授權合約之後,請提供您的電子郵件地址,並送出您的要求。然後,您便能夠下載及安裝 VBA 的轉換程式套件。

附註Hotfix 申請表中所列出的產品雖指明「 Microsoft Office Excel 2007」。然而,此下載皆可適用於 Excel 2007、 Excel 2010 和 Excel 2013。這僅是表單上的限制。

附註VBA 轉換程式套件僅做為 32 位元下載使用。64 位元版本不適用於 64 位元版本的 Excel 中。如要解決這個問題,您必須使用 32 位元版本的 Excel 和 32 位元 VBA 轉換程式套件,才能開啟並移轉現有的檔案。在移轉程式碼之後,您才可以在 64 位元版本的 Excel 中再度使用活頁簿。

如需有關 VBA 轉換程式套件的詳細資訊,請參閱本文結尾〈VBA 轉換器資訊〉 一節。


步驟 2:移轉 Excel 5.0/95 程式碼


安裝 VBA 的轉換程式套件之後,您必須匯出 [Visual Basic 專案總管] 中的每個模組工作表,並移除工作表中的模組,最後再匯入模組至活頁簿。當您檢視在 [專案總管] 中的巨集程式碼時,新舊 VBA 巨集程式碼之間並沒有可見的差別。因此,我們建議您匯出 [專案總管] 中的所有模組。

要移轉程式碼的範例增益集



在 Microsoft 的 CodePlex 網站上,可用來將所有模組匯出並重新匯入回相同活頁簿的範例增益集已經開放下載。請遵循文件所提供的步驟來轉移您的程式碼增益集。

XL5 模組工作表轉換程式

移轉程式碼的手動步驟

在 Excel 中的活頁簿開啟之後,您可以遵循下列步驟來遷移您的程式碼,而不需要使用增益集。
  1. 請按 ALT + F11 來開啟 [Visual Basic 編輯器]。

    現在會顯示所有在 Excel 活頁簿中的 VBA 模組。
  2. 每個模組在 Visual Basic 編輯器] 中,請依照下列步驟執行:
    1. 專案總管] 中 窗格中,本單元中,以滑鼠右鍵按一下,然後按一下 移除 Module_name.
      在版面配置區 Module_name 是您想要匯出及移除模組。
    2. 當系統提示您 您要移除之前先匯出Module_Name嗎??按一下 [是].
    3. 找出您想要儲存在模組複製到相應的資料夾 儲存檔案.此模組在其被移除之後會儲存。
    4. 以滑鼠右鍵按一下 VBAProject (Workbook_name),然後按一下 匯入檔案.
      在版面配置區 Workbook_name 為模組附加至活頁簿的名稱。
    5. 找出您用來儲存模組時所匯出的資料夾。
    6. 選取模組檔案,然後按一下 開啟.此模組會顯示在 [專案總管] 窗格中。
  3. 在上 檔案 功能表中,按一下 關閉並返回至 [Microsoft Excel.
  4. 在匯出和匯入所有模組之後,請儲存活頁簿。


其他相關資訊

如果您不想下載 VBA 轉換程式套件,您可以使用 Microsoft Office Excel 2003 移轉的程式碼。Excel 2003 是 Excel 能夠讀取 Excel 5.0/95 中的 VBA 程式碼的最後一個版本。您可以在 Excel 2003 中開啟您的活頁簿,並執行手動步驟一節中所列出的步驟 2: 移轉 5.0/95 中的程式碼來移轉程式碼。

VBA 轉換程式的資訊

您可以從 Microsoft 取得的支援的 hotfix。然而,其目的只為修正這篇文章所說明的問題。套用此 hotfix,僅提供給已遭遇此特定問題的系統。

此 hotfix 已開放下載,有此知識庫文件頂端的 「 下載 Hotfix 」 區段。如果沒有出現這一節,將要求提交到 Microsoft 客戶服務及支援 」 取得 hotfix。

附註如果發生其他問題,或者如果需要進行疑難排解,您可能必須建立個別的服務要求。收取支援費用會套用到其他支援問題,以及此特定 hotfix 無法解決的問題。如需完整清單的 Microsoft 客戶服務和支援的電話號碼,或是建立個別的服務要求,請造訪下列 Microsoft 網站:
http://support.microsoft.com/contactus/?ws=support
附註「可下載的 Hotfix」表單會顯示 hotfix 可以使用的語言。如果看不到您的語言,是因為 hotfix 未提供該語言。

您也可以連絡 Microsoft 客戶支援服務,以取得 VBA 轉換程式套件。

附註VBA 轉換程式套件免費提供。不過,如果您有其他問題或問題,或者如果需要疑難排解的說明,將會建立個別的服務要求。如果有其他支援問題是未直接涉及取得並安裝 VBA 的轉換程式套件,會酌收支援費用。

附註較舊的檔案類型中開啟 VBA 轉換程式套件的程式碼較不安全。因此,如果開啟這些類型的檔案,可能產生風險。請務必在保留檔案的原始格式後開啟檔案。

屬性

文章編號: 926430 - 上次校閱: 2013年4月5日 - 版次: 4.0
這篇文章中的資訊適用於:
  • Microsoft Excel 2013
  • Microsoft Excel 2010
  • Microsoft Office Excel 2007
關鍵字:?
kbautohotfix kberrmsg kbmacro kbvba kbfilters kbconvert kbtshoot kbexpertisebeginner kbprb kbhotfixserver kbmt KB926430 KbMtzh
機器翻譯
重要:本文是以 Microsoft 機器翻譯軟體翻譯而成,而非使用人工翻譯而成。Microsoft 同時提供使用者人工翻譯及機器翻譯兩個版本的文章,讓使用者可以依其使用語言使用知識庫中的所有文章。但是,機器翻譯的文章可能不盡完美。這些文章中也可能出現拼字、語意或文法上的錯誤,就像外國人在使用本國語言時可能發生的錯誤。Microsoft 不為內容的翻譯錯誤或客戶對該內容的使用所產生的任何錯誤或損害負責。Microsoft也同時將不斷地就機器翻譯軟體進行更新。
按一下這裡查看此文章的英文版本:926430
Microsoft及(或)其供應商不就任何在本伺服器上發表的文字資料及其相關圖表資訊的恰當性作任何承諾。所有文字資料及其相關圖表均以「現狀」供應,不負任何擔保責任。Microsoft及(或)其供應商謹此聲明,不負任何對與此資訊有關之擔保責任,包括關於適售性、適用於某一特定用途、權利或不侵權的明示或默示擔保責任。Microsoft及(或)其供應商無論如何不對因或與使用本伺服器上資訊或與資訊的實行有關而引起的契約、過失或其他侵權行為之訴訟中的特別的、間接的、衍生性的損害或任何因使用而喪失所導致的之損害、資料或利潤負任何責任。

提供意見

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com