如何將 PDF 表格轉換為 Excel:5 種方法比較
PDF 將表格儲存為散落在 x,y 座標上的文字片段——沒有列、沒有欄,也沒有儲存格。本文將介紹如何將這些數據實際匯入試算表,涵蓋從免費的瀏覽器工具到 Python 腳本的各種方法。
您有一份包含表格的 PDF 檔案,需要將其匯入 Excel。這可能是一份財務報告、銀行對帳單、發票或研究論文。數據就在那裡——在螢幕上整齊地排列成行和列。但當您嘗試將其提取出來時,一切都亂套了。
這是因為 PDF 並非數據格式,而是一種顯示格式。在 PDF 規範中,沒有「表格」、「列」或「欄」的概念。看起來像結構化表格的內容,實際上是放置在畫布上特定 x,y 座標處的數十個文字片段。將該結構還原回試算表是一個逆向工程問題——不同的工具處理此問題的成功率各不相同。
本指南涵蓋了 5 種從 PDF 提取表格的方法、每種方法的最佳適用場景,以及出錯時的應對措施。
為什麼從 PDF 提取表格如此困難
PDF 格式沒有表格
PDF 規範 (ISO 32000-2:2020) 定義了內容流 (content stream)——這是一系列將單個字元定位在精確座標上的運算指令。一個簡單的表格列,如「日期 | 描述 | 金額」,可能被儲存為:
BT /F1 10 Tf 72 650 Td (01/15/2026) Tj 200 0 Td (Office Supplies) Tj 180 0 Td (125.00) Tj ET
這裡沒有 <table>、<tr> 或 <td> 標籤,沒有列識別碼,也沒有欄邊界。您在儲存格周圍看到的視覺線條是完全與文字分離的獨立繪圖操作。提取工具必須從空間關係中推斷出整個結構。
三種表格邊框類型
有框線(格柵式,Lattice)表格在每個儲存格周圍都有可見的線條。這些最容易提取,因為線條明確定義了儲存格邊界。常見於正式財務報表、政府表單和標準化報告。
無框線(流式,Stream)表格完全沒有線條。結構完全由空格對齊定義——在不同列中共享一致 x 座標的文字項形成隱含的欄。常見於研究論文、發票和產品目錄。
半框線表格僅具有部分邊框——通常在章節之間有水平線,但沒有垂直分隔線。這在銀行對帳單、券商報告和公用事業帳單中極其常見。這些是最難提取的,因為部分邊框會誤導格柵模式解析器,而缺失的邊框則會降低流式模式的置信度。
有標籤與無標籤 PDF
有標籤 (Tagged) 的 PDF 包含結構化元數據,可識別標題、段落和表格儲存格。無標籤的 PDF 則完全沒有這些——提取工具只能獲取原始座標。絕大多數 PDF 都是無標籤的,包括幾乎所有的銀行對帳單、發票和財務報告。
方法 1:PDFSub 提取表格(免費 + AI 備援)
PDFSub 的 提取表格工具 採用三層級方法,在降低成本的同時最大化準確度:
第一層級:基於座標的偵測(瀏覽器端,免費)
該工具首先嘗試完全在您的瀏覽器中進行提取:
- 解析 PDF 內容流,提取每個文字項及其 x,y 座標
- 根據 y 座標的接近程度將文字項分組為列
- 分析跨列的 x 座標對齊模式以偵測欄邊界
- 要求至少 3 列、2 欄,且置信度需達 70% 以上
如果找到理想的表格,您將立即獲得結構化數據——無需上傳伺服器,不消耗 AI 額度,且您的檔案永遠不會離開您的裝置。
第二層級:伺服器端提取 (pdfplumber, 免費)
如果基於座標的偵測未發現表格,工具將在伺服器上使用 pdfplumber (MIT 授權)。這可以偵測顯式線條(繪製的邊框)和隱含線條(單詞對齊模式),尋找交點,識別矩形,並將文字映射到儲存格。
第三層級:AI 提取(使用額度)
對於掃描的 PDF、複雜佈局或規則化方法無法解析的表格,工具會退回到 AI 驅動的視覺提取。當您知道表格很複雜時,也可以切換「強制 AI 提取」直接跳轉到此層級。
輸出格式: Excel (.xlsx), CSV, JSON。
最適合: 無需安裝軟體的快速提取。數位化 PDF 完全在您的瀏覽器中處理,以實現最大程度的隱私保護。
方法 2:Excel 中的 Power Query(僅限 Windows)
適用於 Windows 上的 Excel 2019+ 和 Microsoft 365:資料 → 取得資料 → 從檔案 → 從 PDF。
運作方式
- 點擊 資料 → 取得資料 → 從檔案 → 從 PDF
- 選擇您的 PDF 檔案
- Power Query 會顯示一個「導覽器」面板,列出每頁偵測到的表格
- 選擇您想要的表格,點擊 轉換資料 進行清理,然後點擊 載入
優點
- 內建於 Excel — Microsoft 365 訂閱者無需額外付費
- Power Query 的轉換引擎能很好地處理後續處理(向下填滿、樞紐分析、合併欄位)
- 如果來源 PDF 更新,可以重新整理數據
- 支援連接來自同一份 PDF 的多個表格
限制
- 僅限 Windows — 不適用於 Mac 版 Excel、Excel 網頁版或行動版
- 難以處理無框線表格 — 對於邊框清晰的表格效果最好
- 無 OCR — 無法從掃描件或圖片 PDF 中提取
- 多頁表格處理困難 — 每一頁通常會匯入為獨立表格,需要手動拼接
- 多行儲存格 — 儲存格內的換行文字經常會拆分成多列,需要清理
最適合: 使用 Microsoft 365 且擁有簡單、有框線表格的 Windows 用戶。
方法 3:Adobe Acrobat(付費)
檔案 → 轉存 PDF → 試算表 → Microsoft Excel 活頁簿
價格 (2026)
- Acrobat Standard:每月 $12.99 美元(年度計劃)
- Acrobat Pro:每月 $19.99 美元(年度計劃)
- Export PDF (獨立版):較低階的僅限轉換計劃
優點
- 內建適用於掃描文件的 OCR
- 對於簡單的有框線表格,通常能保留格式
- Pro 版本提供批次處理功能
限制
- 僅為了提取表格而言過於昂貴 — 每年需花費 $156–$240 美元
- 具有合併儲存格和跨多頁的複雜表格仍會產生對齊錯誤的輸出
- 檔案可能會上傳到 Adobe 雲端進行處理——對於敏感的財務數據存在疑慮
- 需要桌面端安裝
最適合: 已經支付 Acrobat Pro 費用且偶爾需要進行帶有 OCR 的表格匯出的用戶。
方法 4:複製貼上(手動)
最直觀的方法——也是處理表格時最常失敗的方法。
常見問題
- 所有數據都在一欄中 — 整個表格貼上後沒有欄位分隔
- 數字變成文字 — 貨幣符號、括號和分隔符號會破壞數值格式
- 多行儲存格內容產生虛假列 — 在儲存格中跨兩行的描述會變成兩個獨立的列
- 標題與數據分離 — 標題列與數據斷開連接
- 欄位對齊錯誤 — 數據發生偏移,因為字元間距無法轉換為定位點 (Tabs)
部分解決方案
貼上到 Excel 後,使用 資料 → 資料剖析,選擇空格或固定寬度分隔符號。啟用「將連續分隔符號視為單一分隔符號」。這適用於非常簡單、間距良好的表格,但對於任何具有多個單詞儲存格內容的表格都會失敗。
最適合: 作為最後手段提取單個小型、簡單的表格。
方法 5:Python 函式庫(適合開發者)
三個 MIT 授權的函式庫可以透過程式化處理 PDF 表格提取:
Tabula-py
Tabula (Java) 的 Python 封裝版。需要 Java 執行環境。
- Lattice 模式 用於有框線表格(尋找線條和交點)
- Stream 模式 用於無框線表格(使用文字對齊)
- 適合在腳本中進行批次處理
- 不支援 OCR
Camelot
同樣提供 Lattice 和 Stream 模式。
- 對於有框線表格,表現通常優於 Tabula
- Stream 模式具有更多可用於微調的配置參數
- 每次提取都會提供準確度報告
- 需要 Ghostscript 依賴項。不支援 OCR
pdfplumber
基於座標的方法:提取每個字元及其精確位置,然後推斷結構。
- 處理最廣泛的表格類型
- 提供最大程度的控制,但需要更多配置
- 這是 PDFSub 在伺服器端使用的函式庫
- 不支援 OCR
最適合: 自動化處理重複性表格提取工作流、處理大量相似文件的開發者。
常見問題及解決方法
合併儲存格
當儲存格跨越多列或多欄時,大多數工具要麼將內容放在左上角儲存格並留空其他儲存格,要麼使後續所有欄位對齊出錯。目前沒有通用的解決方案——CSV 格式沒有合併概念,因此合併資訊總是會丟失。
修正方法: 提取表格後,在 Excel 中手動修復合併產生的瑕疵。對於具有相同合併模式的重複性表格,請考慮使用後處理腳本。
儲存格內的多行內容
在儲存格內換行的長描述在輸出中會變成多列,導致後續所有數據對齊出錯。這是財務文件提取中最常見的錯誤。
修正方法: 提取後,尋找缺失日期和金額的列——這些很可能是屬於上一列的延續行。在 Excel 中,手動合併它們或使用輔助公式。
跨越多頁的表格
工具必須確定表格在哪裡延續、是否去除重複標題,以及如何過濾頁尾。許多工具將每一頁視為獨立個體。
修正方法: 如果您的工具提供按頁顯示的結果,請合併工作表並刪除重複的標題列。檢查第 N 頁的最後一列是否與第 N+1 頁的第一列正確連接。
貨幣格式問題
括號中的負數 ((1,234.56)) 會貼上為文字而非數字。貨幣符號和千分位分隔符號也會破壞數值格式。
修正方法: 提取後,選取金額欄並使用「尋找與取代」刪除 $, (, ) 字元。然後將該欄格式化為「數值」。對於括號負數,將 ( 取代為 - 並刪除 ),然後轉換為數值格式。
日期歧義
01/02/2026 — 這是 1 月 2 日還是 2 月 1 日?提取工具會按原樣保留字串,但 Excel 可能會根據您的地區設定重新解釋它。
修正方法: 檢查來源 PDF 以獲取日期格式線索(尋找日期值大於 12 的日期)。在匯入前,將 Excel 的日期格式設置為與來源匹配。
準確度比較
| 方法 | 簡單有框線 | 無框線 | 半框線 | 掃描 PDF |
|---|---|---|---|---|
| PDFSub (座標 + AI) | 90–99% | 75–95% | 70–95% | 85–95% (AI) |
| Power Query | 85–95% | 40–60% | 50–70% | 不支援 |
| Adobe Acrobat | 90–95% | 70–80% | 70–85% | 80–90% |
| Tabula | ~68% | 55–70% | 50–65% | 不支援 |
| Camelot | ~73% | 65–75% | 60–70% | 不支援 |
| 複製貼上 | 30–50% | 10–30% | 10–30% | 不可行 |
範圍反映了文件複雜性的差異。基準數據來自 Procycons 2025 PDF 提取基準測試和 Camelot 比較研究。
您應該使用哪種方法?
| 場景 | 最佳方法 | 原因 |
|---|---|---|
| 快速單次提取 | PDFSub | 無需安裝,基於瀏覽器,免費座標提取 |
| 簡單有框線表格 (Windows) | Power Query | 內建於 Excel,無需額外費用 |
| 掃描 PDF | PDFSub (AI) 或 Adobe Acrobat | 需要 OCR 功能 |
| 敏感財務數據 | PDFSub | 瀏覽器端處理,檔案永不上傳 |
| 重複性批次處理 | Python (pdfplumber) | 可編寫腳本,可自動化 |
| 已有 Acrobat Pro | Adobe Acrobat | 已經付費,處理簡單表格效果良好 |
| 單個小表格,無工具 | 複製貼上 | 最後手段,需仔細核對所有內容 |
獲得最佳結果的提示
使用原生 PDF。 從來源下載文件,而不是掃描紙張。原生 PDF 具有完美的文字,使提取準確度大幅提升。
先識別表格類型。 有框線表格幾乎適用於任何工具。無框線表格需要流式模式或 AI 提取。了解類型有助於您預先選擇正確的方法。
從免費、基於規則的方法開始。 先嘗試基於座標的提取。只有當規則化方法效果不佳時,才升級到 AI——這可以節省時間和額度。
務必核對輸出。 檢查列數、欄位對齊、數值和總計。永遠不要盲目信任提取輸出。
注意數字格式。 提取後,確認 Excel 中的數字確實是數字(靠右對齊),而不是文字字串(靠左對齊)。貨幣符號和括號負數是常見的罪魁禍首。
對於敏感數據,優先選擇基於瀏覽器的工具。 財務報告、銀行對帳單和稅務文件包含敏感資訊。在瀏覽器中處理 PDF 的工具永遠不會上傳您的檔案,消除了數據洩露風險。
免費試用
準備好從 PDF 提取表格了嗎?立即上傳檔案 — PDFSub 會先嘗試免費的基於座標的提取,並針對複雜表格提供 AI 備援。數位化 PDF 完全在您的瀏覽器中處理。開始 7 天免費試用。