首頁學習資源Excel VBA 效率提升Excel .xlsx 與 .xlsm 差在哪?顯示副檔名與保存巨集完整教學
回到 Excel VBA 效率提升Excel VBA 效率提升

Excel .xlsx 與 .xlsm 差在哪?顯示副檔名與保存巨集完整教學

看懂 Excel 一般活頁簿與啟用巨集活頁簿的差異,學會在 Windows 顯示副檔名、正確保存 VBA,避免另存檔後巨集不見。

Excel .xlsx 與 .xlsm 差在哪?顯示副檔名與保存巨集完整教學

重點摘要

- .xlsx 是一般 Excel 活頁簿,不能保存 VBA 巨集程式碼。 - .xlsm 是啟用巨集的 Excel 活頁簿,可以保存 VBA 巨集。 - Windows 隱藏副檔名時,容易誤判檔案類型;開始製作巨集前應先顯示副檔名。 - 含巨集的檔案若誤存成 .xlsx,Excel 會警告巨集內容無法保留。 - 執行別人提供的巨集檔前,先確認來源可信並保留備份。 最直接的判斷方式是看完整檔名:只要活頁簿需要保留 VBA,就應使用 .xlsm;純資料、公式與一般報表則可使用 .xlsx。先讓 Windows 顯示檔案名稱副檔名,能降低巨集遺失、傳錯檔案或誤開不明巨集的風險。

Excel .xlsx 與 .xlsm 的核心差異

| 比較項目 | .xlsx | .xlsm | |---|---|---| | 中文名稱 | Excel 活頁簿 | Excel 啟用巨集的活頁簿 | | 保存 VBA | 不可以 | 可以 | | 適合情境 | 一般資料、公式、圖表與報表 | 巨集、按鈕、自動化工具 | | 分享前檢查 | 確認不需要巨集 | 確認來源、數位簽章與安全設定 | | 辨識方式 | 檔名結尾為 .xlsx | 檔名結尾為 .xlsm | Microsoft 的 Open XML 說明指出,以 x 結尾的 Office 格式(例如 .xlsx)不包含 VBA 或 XLM 巨集;以 m 結尾的格式(例如 .xlsm)才可包含巨集。

Windows 檔案總管比較 Excel xlsx 與 xlsm 的操作示意圖
操作示意圖:顯示完整副檔名後,可直接辨認一般活頁簿與啟用巨集活頁簿。

如何在 Windows 顯示檔案副檔名?

以下步驟以 Windows 11 為主;Windows 10 的介面位置稍有不同,但目的相同。完成後,檔案名稱會顯示 .xlsx.xlsm 等完整結尾。

① 📁 開啟檔案總管

按下 Windows + E,或從工作列開啟「檔案總管」,進入存放 Excel 練習檔的資料夾。

② 👁️ 開啟檔案名稱副檔名

在 Windows 11 選取「檢視」→「顯示」→勾選「檔案名稱副檔名」。完成後,原本只看到「每月報表」的檔案,會顯示為 每月報表.xlsx每月報表.xlsm

③ ⚙️ 舊版 Windows 改用資料夾選項

若找不到上述開關,開啟「檢視」→「選項」→「變更資料夾及搜尋選項」,切換到「檢視」索引標籤,取消勾選「隱藏已知檔案類型的副檔名」,再按「套用」與「確定」。

④ ✅ 用兩個練習檔驗證

準備一個一般活頁簿與一個啟用巨集活頁簿,確認檔名分別顯示 .xlsx.xlsm。請勿只依圖示判斷,因為不同 Excel 或 Windows 版本的圖示可能略有差異。

如何正確把巨集保存成 .xlsm?

① 💾 選擇另存新檔

在包含 VBA 的活頁簿中選取「檔案」→「另存新檔」,先指定新的檔名與資料夾。建議保留原始檔副本,再進行格式轉換。

② 🧩 選擇啟用巨集的活頁簿

在「存檔類型」選擇「Excel 啟用巨集的活頁簿 (*.xlsm)」。不要只在檔名後方手動改字尾;應由 Excel 的存檔類型完成正確轉換。

③ 🔍 關閉後重新開啟驗證

儲存後關閉活頁簿,再從檔案總管確認副檔名是 .xlsm。重新開啟時,到「檢視」→「巨集」→「檢視巨集」,確認原有巨集仍在。

④ 🛡️ 確認來源後才啟用內容

若 Excel 顯示安全性警告,先確認檔案來源、檔案用途與提供者;不確定時不要啟用巨集。巨集可修改資料與檔案,安全檢查不是多餘步驟。

專有名詞說明

名詞新手說明
副檔名檔名最後一個句點後的文字,用來表示檔案格式。
VBAVisual Basic for Applications,Office 用來編寫自動化程式的語言。
巨集可重複執行的一組操作;錄製結果通常會保存為 VBA 程式碼。
啟用巨集的活頁簿能保存 VBA 巨集的 Excel .xlsm 檔案。
安全性警告Excel 對可能含有可執行程式碼的檔案所顯示的保護提示。

示範情境:月底報表的巨集突然不見

示範情境中,行政人員把已錄製巨集的報表另存為 .xlsx,再次開啟後找不到巨集。原因不是 Excel 自動刪除檔案,而是 .xlsx 本來就不能保存 VBA。正確做法是回到仍含程式碼的原始檔,另存成 .xlsm,再關閉並重新開啟驗證。若原始檔已被覆寫且沒有備份,巨集通常無法從 .xlsx 還原。

給 AI 的檔案格式檢查提示詞

你是一位 Excel VBA 教學助理。請用繁體中文(台灣)協助我檢查活頁簿應使用 .xlsx 還是 .xlsm。

我的情境:
- 活頁簿用途:[例如每月銷售報表]
- 是否有錄製巨集或 VBA:[是/否/不確定]
- 是否需要分享給同事:[是/否]

請提供:
1. 建議的檔案格式與理由;
2. 在 Windows 顯示副檔名的步驟;
3. 另存新檔後的驗證清單;
4. 巨集安全注意事項。
請勿要求我上傳含有客戶、員工或公司機密的原始檔。

常見錯誤與排除方式

常見問題

.xlsx 可以執行別的活頁簿中的巨集嗎?

可以。.xlsx 本身不能保存 VBA,但當另一個 .xlsm 活頁簿已開啟時,可從巨集清單選取其中的公開巨集,並讓巨集處理目前作用中的活頁簿;實際結果仍取決於巨集如何引用活頁簿與工作表。

.xlsm 一定有巨集嗎?

不一定。.xlsm 表示它具備保存巨集的能力,不代表檔案內一定已經有 VBA 程式碼。可到「檢視巨集」或 VBA 編輯器確認。

把 .xlsm 轉成 .xlsx 會怎樣?

工作表資料、公式與一般格式多半可保留,但 VBA 專案無法保存在 .xlsx。轉換前請保留 .xlsm 原始檔並檢查 Excel 顯示的相容性警告。

延伸閱讀

參考來源

- Microsoft 支援服務:Windows 中的檔案總管 - Microsoft 支援服務:Open XML 格式與副檔名 - Microsoft 支援服務:Excel 中支援的檔案格式 - Microsoft 支援服務:儲存巨集 作者:施文華|企業自動化顧問/講師 更新日期:2026-09-23|內容版本:1.0

施文華|企業自動化顧問/講師

專注 Excel、VBA、Power BI、Power Automate 與企業流程自動化,從真實工作問題出發,協助學員建立可持續使用的能力。