將 VBA 巨集轉換為 Apps Script

事前準備

建議您在轉換檔案前,先更新 VBA 程式碼中不相容的 API。如果檔案的狀態為「完全支援」,請繼續進行步驟 1:轉換檔案

修改不相容的 VBA API

如果檔案的狀態為「支援,有替代方法」或「需要調查」,您可以在 Apps Script 中完成轉換後,套用替代方法和修正程式,但建議您先修改熟悉的 VBA 程式碼,再轉換檔案。

針對相容性報告中標示為「支援,有因應措施」或「需要調查」的每個 API,我們建議採取以下做法:

  • 如果 API 執行的函式對 VBA 巨集的正常運作並非必要,請從 VBA 程式碼中移除該函式。如果是,請變更程式碼,以便使用支援的 VBA API 實作類似的行為。
  • 如果 API 的狀態為「支援,但有替代方法」,如果您無法切換至支援的 VBA API,請維持 VBA API 原樣。轉換為 Apps Script 後,建議您在轉換的 Apps Script 程式碼註解中,提供這個 API 的已知替代方法。
  • 如果問題來自未實作的語言結構,請重寫程式碼,避免使用這些結構。
  • 如果 API 狀態為「需要調查」,請檢查程式碼是否包含下列任何 API:

    • Adodb.connection
    • CreateObject:這個 API 通常用於連結資料庫和企業資源規劃軟體。
    • Shell.execute
    • OleObject

    如果是,建議您不要轉換這些 API 所屬的檔案,並研究其他選項。這些 API 通常會為巨集執行重要作業,例如連線至資料庫或存取本機資源,而 Apps Script 通常不是理想的解決方案。

步驟 1:轉換檔案

  1. 在電腦上開啟 Google 雲端硬碟
  2. 在右側面板中,按一下「巨集轉換器」外掛程式 巨集轉換器圖示。如果沒有看到側邊面板,請按一下右下方的「顯示側邊面板」圖示
  3. 按一下「新增檔案和資料夾」。巨集轉換工具只會辨識 Excel 檔案。
  4. 選擇要轉換的檔案或資料夾,然後按一下「選取」。一次選取的檔案數量不得超過 2,000 個。
  5. 如要變更轉換後的檔案儲存位置,請按一下「變更目的地資料夾」圖示 ,然後選取所需資料夾。否則,檔案會儲存在「我的雲端硬碟」資料夾中。
  6. 按一下「轉換」
  7. 轉換完成後,按一下「查看結果」

步驟 2:測試轉換後的檔案

執行 Apps Script 程式碼

轉換檔案後,請測試 Apps Script 函式。請使用平常用於 Excel 檔案的資料測試轉換後的檔案。盡可能比較轉換後的 Google 試算表檔案輸出結果與原始 Excel 檔案輸出結果。

測試觸發條件

如果檔案包含 onOpen()onEdit()onClick() 等觸發條件,請一併測試觸發條件。部分 VBA 觸發事件不會自動轉換,需要在 Apps Script 中處理。請參閱「解決常見問題」。

查看 ReadMe 檔案

如果系統已使用轉換後的檔案產生 ReadMe 檔案,請查看 ReadMe 檔案中列出的轉換問題。

  • 如果問題可能會影響您尚未測試的案例,請在程式碼中套用建議的變更。
  • 如果您已測試所有可能的情況,且所有情況都正常運作,則可能不需要進行變更。

步驟 3:修正錯誤

如果在測試檔案時發生錯誤,請參閱「修正轉換後的程式碼中的錯誤」。

如果程式碼執行時沒有錯誤,但結果不符合預期,請開啟檔案的 ReadMe 檔案。請查看每個部分,找出問題原因,並套用建議的修正方式。

修正錯誤後,請再次測試檔案,確保一切正常運作。