執行 XLSM 轉 JSON 通常是為了處理表格資料,而非 VBA。開啟啟用巨集的 Excel 活頁簿後,將每個資料列轉換為 JSON 物件,接著將這些資料傳遞給 API、Web 應用程式或資料庫。大多數轉換器都不會執行巨集,而是直接讀取已儲存的儲存格數值和標題。
本指南將逐步介紹使用 WPS Spreadsheets 執行 XLSM 轉 JSON 的實用方法:在本機開啟 .xlsm 檔案、清理表格、儲存為 CSV 作為過渡檔案,最後產生 JSON。內容也將涵蓋線上工具、指令碼以及你應注意的安全限制。如果你只需要先檢視活頁簿,請參閱如何開啟 XLSM 檔案。

XLSM 轉 JSON 實際匯出了什麼內容
XLSM 是可儲存 VBA 的 Open XML 活頁簿格式。而 JSON 是由物件、陣列、字串、數字與布林值建構的文字格式。當人們搜尋 XLSM 轉 JSON 時,通常是希望將工作表轉換為物件陣列 —— 每列對應一個物件,並以標題列作為鍵值。
這種結構適用於多數 API:
第 1 列會成為鍵值,例如
Product、SKU和Price接下來的每一列都會成為一個物件
視使用的工具而定,空白儲存格通常會變成
null或被直接省略若檔案在上次儲存時已快取公式的計算結果,公式將會匯出為該計算數值
一般的 XLSM 轉 JSON 匯出不會包含:按鈕程式碼、UserForms、ActiveX 控制項以及大部分的 VBA 模組。如果你的報表必須在執行巨集後才會重新建構,請先在 Excel 或 WPS 中完成該步驟,接著再轉換計算後的結果數值。
在執行 XLSM 轉 JSON 匯出前準備好活頁簿
結構不佳是導致 XLSM 轉 JSON 結果出錯的主要原因。合併的標題、空白的間隔列以及雙層標題列都會產生混亂的鍵值。在轉換之前,請先花個兩分鐘整理工作表。
請使用以下檢查清單:
將欄位名稱放在單一標題列中
在標題下方,保持每列只有一筆紀錄
移除不該成為 JSON 物件的總計列
使用獨一無二且簡單的標題名稱,並避免換行
將郵遞區號和 SKU 保持為文字格式,以保留開頭的零
如果活頁簿包含多個工作表,請決定哪個工作表才是資料的真實來源。轉換器通常預設只會處理第一個工作表。針對多工作表的模型,請為每個工作表執行一次 XLSM 轉 JSON,或是使用能在輸出物件中為每個工作表命名的指令碼。

如何使用 WPS Spreadsheets 執行 XLSM 轉 JSON
WPS Office 將 .xlsm 列為與 Excel 相容的試算表格式,因此你可以在電腦上開啟檔案,在不啟用巨集的情況下檢閱資料,並儲存為乾淨的表格。對於這項工作流程,WPS 不必是原生的 JSON 編輯器。可靠的桌面作業模式為:開啟 XLSM → 清理資料 → 另存為 CSV → 將 CSV 轉換為 JSON。對於 API 與資料匯入來說,這仍然稱得上是完整的 XLSM 轉 JSON 流程。
步驟 1:從 WPS 主畫面開啟 Spreadsheets
啟動 WPS Office 並選擇 Spreadsheets。你需要的是試算表工作區,而不是 Writer 或 Presentation。

步驟 2:開啟 .xlsm 活頁簿
點擊 選單 > 開啟,瀏覽至啟用巨集的檔案並將其開啟。除非你信任寄件者,並且需要自動化功能來重新整理數值,否則請不要啟用巨集。針對純資料的 XLSM 轉 JSON 任務,請保持停用巨集,並直接使用已儲存的數字進行處理。

步驟 3:清理標題並修剪使用的範圍
確認第 1 列包含你在 JSON 中需要的鍵值。刪除表格上方裝飾用的標題列,或是將真正的表格移動到命名為 Data 的新工作表。在離開試算表網格前,請檢查日期和小數是否顯示正確。
步驟 4:另存為 CSV 作為過渡檔案
選擇 選單 > 另存新檔(或從檔案選單選擇「另存新檔」),將格式設定為 CSV 或文字 CSV,並儲存一份副本。CSV 能保持表格扁平化並移除 Excel 附加格式。許多免費轉換器與指令碼都支援以 CSV 作為輸入,這讓 XLSM 轉 JSON 的最後一哩路比直接上傳巨集檔案更簡單、更安全。

步驟 5:將乾淨的表格轉換為 JSON
將 CSV 上傳至值得信賴的本機轉換器,或是執行簡短的指令碼(Python 搭配 pandas、Node 搭配 SheetJS 及類似的函式庫皆支援此操作)。建議優先選擇可輸出物件陣列並能將文字欄位保留為字串的工具。完成後,你將看到與 WPS 表格逐列對應的 JSON。

如果你之後需要反向轉換,WPS 也提供了如何將 JSON 轉換為 Excel 的教學。
XLSM 轉 JSON 的線上工具與指令碼
當檔案已清理完畢時,線上的 XLSM 轉 JSON 轉換器只需一次上傳即可完成任務。優秀的工具會以靜態方式解析活頁簿,絕不會執行 VBA,並允許你選擇輸出物件陣列。處理薪資、客戶或健康資料時,請避免使用未知的網站 —— 建議改用本機指令碼。
對於開發人員來說,像是 SheetJS、openpyxl 搭配 JSON dump,或商業版 Excel API 等函式庫,都能夠載入 .xlsm 並產生 JSON。你通常會看到的選項包含:
來自使用中工作表的物件陣列
以工作表名稱為鍵值的巢狀物件
格式化列印與壓縮版的 JSON
保留公式文字而非快取數值的切換開關
當你需要每晚執行 XLSM 轉 JSON 任務時,指令碼的擴充性會優於點擊工具。針對人為建立的混亂活頁簿,請保留 WPS 的清理步驟;只有在標題穩定後才進行自動化。
每個 XLSM 轉 JSON 工作流程都應遵守的安全限制
請將含有巨集的活頁簿視為帶有程式碼的郵件附件。標榜能執行 XLSM 轉 JSON 的轉換器根本不需要執行巨集。如果某個網站要求你在瀏覽器中啟用巨集,請立刻停止操作。
另外請記住:
JSON 不會保留 VBA 以供日後重新匯入
圖表、樞紐分析表快取與命名範圍可能會被捨棄
受密碼保護的活頁簿必須在轉換前先解除鎖定
工作表中的個人資料會變成純文字 JSON —— 請小心妥善儲存
如果 Windows 在下載後封鎖了該檔案,請僅針對信任的檔案在「內容」中解除封鎖,然後在 WPS 中重新開啟。你仍然可以在停用巨集的情況下完成 XLSM 轉 JSON。

常見問題
XLSM 轉 JSON 會包含巨集嗎?
通常不會。標準轉換器只會匯出儲存格資料,巨集名稱可能只會出現在選用的中繼資料中。如果你仍需要 VBA,建議保留原始的 .xlsm 檔案。
可以在沒有 Microsoft Excel 的情況下執行 XLSM 轉 JSON 嗎?
可以。在 WPS Spreadsheets 中開啟檔案、清理表格、匯出 CSV,然後再進行轉換。支援 Open XML 的線上解析器與指令碼也能直接讀取 .xlsm 檔案。
為什麼我的 XLSM 轉 JSON 輸出結果看起來是巢狀的或是空白的?
選錯工作表、空白的標題儲存格,或是合併的標題列都是常見的原因。請在資料工作表上使用單一標題列再試一次。如果公式顯示為空白,請開啟活頁簿、重新計算並儲存後,再次進行轉換。
執行 XLSM 轉 JSON 一定要使用 CSV 嗎?
不一定,但當你想在上傳前移除巨集時,它是一個相當實用的過渡檔案。直接解析 XLSM 的工具會跳過該步驟。當隱私權或巨集風險比一鍵操作的便利性更重要時,請使用 CSV。





