你從會計工具匯出銷售報告,得到兩個選項:下載為 CSV 或 XLSX。你選了一個,打開後,發現有些不對勁 — 公式不見了,重音字元變成亂碼,或日期在歐式和美式格式之間搖擺。這是試算表格式的日常現實,XLSX 和 CSV 之間的選擇很少像看起來那麼明顯。
兩種格式都儲存表格資料,但它們是為不同的工作而設計的。理解每種格式保留了什麼 — 以及它默默丟棄了什麼 — 可以節省你數小時的除錯時間和大量挫敗感。
CSV 究竟是什麼
CSV 代表 Comma-Separated Values(逗號分隔值)。它是仍在廣泛使用中最古老、最簡單的表格格式,可以追溯到 1970 年代的大型主機資料交換。
CSV 檔案是純文字檔案。每行是一列,列內的值由分隔符分隔 — 通常是逗號,有時是分號、定位字元或豎線。沒有格式、沒有公式、沒有樣式,也沒有多工作表概念。只有文字的列和欄。
這種簡單性是 CSV 的超能力。任何處理表格資料的工具 — 從 50 年前的 COBOL 程式到現代 Python 指令碼 — 都能讀取 CSV。沒有專有解析器、沒有版本相容性、沒有授權。在文字編輯器中打開就能閱讀。
XLSX 究竟是什麼
XLSX 是 Office Open XML Spreadsheet 格式,由 Microsoft 在 2007 年推出,以取代舊的二進位 .xls 格式。儘管起源於 Microsoft,XLSX 是一個開放的 ISO 標準(ISO/IEC 29500),大多數現代試算表應用程式原生支援。XLSX 檔案不是單一檔案 — 它是一個包含數十個 XML 文件的 ZIP 封存檔。裡面你會找到:
- 儲存格資料和公式
- 格式(字型、顏色、邊框、數字格式)
- 多個工作表,每個有自己的網格
- 圖表、樞紐分析表、具名範圍、條件式格式
- 嵌入圖像甚至巨集
你可以將 .xlsx 檔案重新命名為 .zip,解壓縮並自己檢查 XML。這使 XLSX 既豐富又可檢查。
誠實的比較
| 功能 | CSV | XLSX |
|---|---|---|
| 儲存簡單值 | ✅ | ✅ |
| 保留公式 | ❌ | ✅ |
| 保留格式 | ❌ | ✅ |
| 多個工作表 | ❌ | ✅ |
| 圖表和樞紐分析表 | ❌ | ✅ |
| 數字格式(貨幣、日期) | ❌ (僅文字) | ✅ |
| 通用相容性 | ✅ | ✅ (現代應用) |
| 可在文字編輯器中讀取 | ✅ | ❌ (是 ZIP) |
| 簡單資料的大小 | 最小 | 5-10× 更大 |
| 地區設定問題風險 | 高 | 低 |
| 大檔案串流處理 | ✅ | ⚠️ (必須先解壓縮) |
什麼時候 CSV 是正確答案
需要這些屬性中的任何一個時使用 CSV:
- 最大相容性。 匯入資料庫、提供給指令碼、傳送給工具未知的合作夥伴 — CSV 在任何地方都能運作。
- 海量資料集。 一百萬列 CSV 串流處理良好;一百萬列 XLSX 可能達到記憶體限制並觸及 Excel 每張表 1,048,576 列的硬上限。
- 版本控制。 CSV 在 Git 中乾淨地差異化。XLSX 顯示為二進位 blob。
- 純資料交換。 當你只需要值,接收系統將套用自己的格式時。
什麼時候 XLSX 是正確答案
當以下任何一項重要時切換到 XLSX:
- 公式必須保留。 帶有
=SUM(B2:B30)的預算在 CSV 中變成靜態數字。 - 多個工作表。 每月一張表的月度追蹤器在 CSV 中坍塌為單張表。
- 格式承載意義。 粗體總計、顏色編碼類別、貨幣符號、百分比格式 — 在 CSV 中全部遺失。
- 型別安全的日期和數字。 XLSX 將
2026-05-02儲存為日期型別。CSV 將其儲存為文字,下一個工具決定如何解釋(通常錯誤)。 - 收件者是人類。 人類閱讀 XLSX 檔案。程式讀取 CSV。
抓住所有人的陷阱
一些特定問題反覆咬傷使用者:
地區設定逗號陷阱 在法語、德語和許多其他地區設定中,小數分隔符是逗號,不是句點。所以 1,5 表示 1.5。但 CSV 使用逗號作為欄位分隔符。這些地區設定的 Excel 改用分號儲存 CSV — 然後在匯入到期望逗號的工具時會出錯。結果:錯誤欄位的數字,或整列合併。
日期格式陷阱 帶有 03/04/2026 的 CSV 是模糊的。是 4 月 3 日還是 3 月 4 日?Excel 根據地區設定自動解釋,有時默默重寫日期。XLSX 將日期儲存為帶有明確型別中繼資料的數字(自 1900 年以來的天數),消除了模糊性。
前導零陷阱 以 0 開頭的電話號碼、郵遞區號或產品 SKU 在 XLSX 中作為文字存活。在 CSV 中,在 Excel 中重新開啟時,它被解析為數字,前導零消失。永遠。
編碼陷阱 在 Windows 上以 ANSI 匯出的 CSV 看起來很好,直到帶有 é 的法語名稱或日語檔案名出現。如果 Excel 將重新開啟,始終以 UTF-8 with BOM 匯出 CSV,如果指令碼消費它,則以 UTF-8 普通方式匯出。
實用的經驗法則
使用這個簡單測試:
- 人類會開啟它嗎? → XLSX
- 程式或管道會消費它嗎? → CSV
- 有公式、多個工作表或格式嗎? → XLSX
- 它要去資料庫、API 或工具未知的合作夥伴嗎? → CSV
- 檔案大於 100 MB 或 500,000 列嗎? → CSV
如有疑問,將主版本儲存為 XLSX,需要時匯出為 CSV。反方向 — 在 CSV 中建立豐富格式並嘗試升級到 XLSX — 會失去每種格式的優勢。
更進一步
如果你每天使用試算表,兩個簡短的教學涵蓋了瀏覽器中的常見工作流程:
- 如何線上編輯 XLSX 試算表而無需 Excel — 無需 Excel 即可開啟、編輯、執行公式和匯出。
- 如何在 JSON、YAML 和 CSV 之間轉換 — 在常見格式之間往返資料而不遺失結構。
兩者都完全在瀏覽器中執行,永遠不會將你的檔案上傳到任何伺服器。
