PDFの表をExcelにコピーすると毎回崩れる理由
PDFで表を選択してCtrl+Cを押し、Excelに貼り付ける――誰もが一度は試したことがある操作です。そして、ほぼ毎回結果に頭を抱えることになります。きれいに並んでいたはずの列が全部同じセルに詰め込まれていたり、逆に1文字ずつバラバラのセルに分解されていたり、数字に単位がくっついたままで計算に使えなかったり。
原因はPDFの内部構造にあります。PDFはもともと「印刷用フォーマット」として設計されており、各文字のページ上における座標位置を記録しています。Excelのような「行」「列」という概念は持っていません。PDFの表を選択したとき、OSは文字の座標情報をもとに左から右、上から下の順に文字列を拾っているだけで、列の区切りがどこかは一切認識していません。Excelに貼り付けた結果が乱れるのは、そもそもの仕組みが違うからです。
さらに厄介なのが、スキャン画像から作られたPDFです。そもそも文字を選択することすらできず、見ることはできても操作できません。ただし本記事では、カーソルでテキストを選択できる「テキスト型PDF」に絞って、最も効率的な対処法を解説します。
先にテキスト抽出、それから整理――なぜその方が結局早いのか
一見遠回りに思えるかもしれませんが、実際に試してみると「先にテキスト抽出 → Excelで列分割」という手順のほうが、直接コピペするより大幅に時間を節約できます。理由は大きく2つです。
1. プレーンテキストは最もクリーンで予測しやすい形式
PDFを.txtに変換すると、隠し書式が一切ない純粋なテキストの流れとして取り出せます。列のデータが1行に連結されることはありますが、その並び方には一定のルールがあり、多くの場合スペース・タブ・特定の区切り文字で区切られています。この規則性があるからこそ、Excelの「区切り位置」機能で一括処理でき、セルを1つずつ手直しする手間が省けます。
2. PDFビューアーごとのコピー動作の差異を避けられる
Adobe Acrobat、ブラウザ内蔵のPDFビューア、macOSのPreviewなど、ツールによって表のコピー結果はまちまちです。ツールを使ってプレーンテキストとして統一的に抽出すれば、動作が再現可能で予測しやすく、別のパソコンで作業しても謎の書式崩れが起きません。
操作手順(完全版)
ステップ1:PDFからテキストを抽出する
PDF→テキスト変換ツールを使って、PDF全体を.txtファイルとして書き出します。操作は簡単で、PDFをアップロードして数秒待つだけ。あとは.txtファイルをダウンロードすれば完了です。
取り出したテキストファイルをメモ帳やテキストエディタで開いて内容を確認してみましょう。表の列データは通常、2つ以上のスペースで区切られていることが多く、たとえば次のように表示されます。
日付 品目 数量 単価 小計 2026-09-01 製品A 10 250 2500 2026-09-02 製品B 5 380 1900 区切り文字のパターンを確認しておいてください。次のステップで列分割をするときの基準になります。
ステップ2:txtファイルをExcelに取り込んで列分割する
方法1:Excelの「テキストファイルから」インポートを使う
- Excelを開き、「データ」→「テキストまたはCSVから」を選択し、
.txtファイルを指定する - Excelが区切り文字(スペースやタブが多い)を自動検出し、プレビューで列分割の結果が表示される
- 検出がうまくいかない場合は、「固定幅」モードに切り替えて列の区切り線を手動で調整する
- 確認できたら「読み込み」をクリックすれば、データがワークシートに直接取り込まれる
方法2:貼り付けてから「区切り位置」で分割する
新しいExcelファイルを作りたくない場合は、.txtの内容を既存のワークシートのA列に直接貼り付け、そのセル範囲を選択した状態で「データ」→「区切り位置」を実行します。「区切り文字」を選び、「スペース」にチェックを入れるか、実際の区切り文字を指定すれば、同様に各列にデータを分割できます。
ステップ3:データをクリーニングして書式を整える
Excelに取り込んだあとは、いくつか追加の作業が必要になることがあります。
- 余分な空白行を削除:テキスト変換時に空行が混入することがあります。「検索と置換」とフィルター機能を組み合わせると素早く削除できます
- 数値書式の修正:数値がテキスト形式で取り込まれ、右揃えではなく左揃えになっているケースがあります。その列を選択して「データ」→「区切り位置」→そのまま「完了」をクリックすると、Excelが自動的に数値へ変換してくれることが多いです
- 日付書式の統一:
2026/9/1や20260901など非標準の日付形式は、「区切り位置」の「列のデータ形式」で「日付」を選び、フォーマットを指定してからインポートすると正しく認識されます - ヘッダー行の確認:1行目の見出しが取り込まれているか、位置がずれていないか、重複していないかを確認しましょう
複雑なレイアウトや複数ページにまたがる表への対応
表が複数ページにわたるPDFや、2段組レイアウトのPDFでは、抽出したプレーンテキストの順序が乱れることがあります。そういった場合の対処法をいくつか紹介します。
改ページ部分の処理:.txtファイル内にある改ページの目印(多くの場合は空白段落やページ番号の行)を手動で削除し、データが連続した状態にしてからExcelに取り込みましょう。
対象ページをPDF分割ツールで切り出す:PDFのページ数が多く、必要な表が数ページだけの場合は、PDF分割ツールを使って目的のページを別ファイルとして切り出してからテキスト抽出すると、作業がずっとスムーズになります。
列の順序が乱れる場合:2段組レイアウトによって左右の列データが交互に混在してしまうケースでは、Excelのフィルターや手動の並べ替えで整理が必要です。万能な自動化手段はありませんが、データの分布パターンを把握できれば、MOD(ROW(), n)などのExcel関数を活用して一括処理することも可能です。
元のレイアウトを保持したい場合
ここまで紹介した方法は「書式は不要、データだけ取り出せればよい」というケースに向いています。一方で、PDFに大量の説明文・図表・段落構成が含まれていて、文書全体を編集可能な状態にしたい場合は、PDF→Word変換を使う方が適しているかもしれません。変換後のWordファイルには元のレイアウトが保持されるため、Word上で目的の表を見つけてExcelにコピーすれば、PDFから直接コピーするよりも列構造がきれいに保たれることが多いです。
また、整理済みのWordやExcelのレポートをPDFに変換して共有したい場合は、Word→PDF変換を使うと、相手のソフトウェアのバージョンに関係なく、どの端末でも同じレイアウトで表示されます。
さっそく試してみよう
PDFの表が貼り付け後に崩れる問題は、多くの方が毎週のように直面している悩みです。しかし、たった1つのステップを変えるだけ――まずテキストを抽出する――それだけで、その後の整理作業が格段に楽になります。
ぜひPDF→テキスト変換を使って、手元の厄介なPDF表を.txtに変換し、本記事の手順に沿ってExcelに取り込んでみてください。ページ数が多いファイルは、PDF分割で必要なページだけを切り出してから処理すると、全体の流れがよりスムーズになります。