將 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 檔案搭配使用的資料,測試轉換的檔案。如果可以,請比較轉換後試算表檔案的輸出內容與原始 Excel 檔案的輸出內容。

測試觸發條件

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

查看 ReadMe 檔案

如果轉換檔案產生了 ReadMe 檔案,請查看 ReadMe 檔案中列出的轉換問題。

  • 如果問題可能與您尚未測試的案例有關,請對程式碼套用建議變更。
  • 如果您已測試所有可能情境,且一切運作正常,則可能不需要進行變更。

步驟 3:修正錯誤

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

如果程式碼可正常執行,但結果不符合您的預期,請開啟檔案的 ReadMe 檔案。請查看各個部分的說明,判斷造成問題的原因,並套用建議的修正方式。

修正錯誤後,請再次測試檔案,確認一切都能如預期運作。