ChatGPTの表は、| 記号で列を表現したプレーンテキストのMarkdownパイプ表です。スプレッドシートはパイプではなくセルの境界を期待するため、すべての行が1つの列に入ってしまいます。先にXLSXやCSVに変換すれば、Excel、Sheets、Numbersで正しく開ける本物の行列になります。
なぜ表全体がA列に入ってしまうのか
チャット画面に表示されているのは、レンダリング済みの表です。しかしクリップボードにコピーされるのは、通常こういうものです。
| Region | Q1 | Q2 |
| --- | ---: | ---: |
| Europe | 412 | 486 |
| Asia | 377 | 381 |
これがMarkdownパイプ表です。縦線は、人間の目には列の区切りに見えるだけの普通の文字です。ダッシュとコロンからなる2行目は、ヘッダーの終わりと各列の配置をMarkdownレンダラーに伝えるためのものです。
Excelは貼り付けられたテキストをパイプではなくタブ文字で分割します。タブが存在しないため、各行が1つの値として扱われ、パイプが見えたまま表全体がA列に積み上がります。Google SheetsとNumbersもまったく同じ動作です。
この配置行があることが、これがスプレッドシートのデータではないことの証拠です。スプレッドシートからエクスポートされたデータに、ハイフンとコロンだけの行が含まれることはありません。
生の表を貼ると、すべての値が1つの列に入ってしまいます。
XLSXやCSVに変換すれば、行と列がそのまま保たれます。
最速の解決策:貼る前に変換する
貼り付けてから修復するより、スプレッドシートが理解できる形式に変換してしまう方が簡単です。
ExcelとNumbersの場合、Markdown表をExcelに変換で本物の.xlsxファイルが作れます。表を貼り付けて、スプレッドシートをダウンロードして、開くだけです。数値は数値のまま、ヘッダー行もヘッダー行のまま保たれ、後で分割する必要はありません。
Google Sheetsの場合、Markdown表をCSVに変換の方が手軽なことが多いです。CSVはファイル → インポートからネイティブに読み込めるため、ブラウザ上でXLSXに必要なダウンロード→アップロードの往復を省けます。引用符やセル内のカンマも正しくエスケープされるので、手作業での変換が失敗しがちな箇所も安心です。
どちらもブラウザ内でローカルに処理されるため、データが端末の外に出ることはありません。見知らぬサイトに貼りたくない内容が表に含まれる場合は、注目に値するポイントです。
手動の方法と、使う価値がある場面
スプレッドシートから離れたくない場合、組み込みの機能を使う方法が2つあります。
区切り位置(Excel)。 元の表をA列に貼り付けて選択し、*データ → 区切り位置 → カンマやタブなどの区切り文字…*で、区切り文字にパイプ記号を指定します。その後、配置行の削除と、先頭・末尾のパイプによってできた余分な空列の削除が必要です。
SPLIT(Google Sheets)。 元の表をA列に入れ、=SPLIT(A1, "|")を使って下にコピーし、値として貼り直します。同様の後処理が必要です。
小さな表が1つだけならこれで十分です。ただしすぐに面倒になりますし、どちらの方法もすべてのセル内に空白のパディングが残ります。Markdownが見やすさのために入れたスペースが値の一部になるため、EuropeはEuropeと一致せず、VLOOKUPなどでヒットしません。この末尾スペースの問題は、「見た目は正しいのに動作がおかしい」変換済み表の最もよくある原因です。
コピー方法についての補足: コピーボタンではなく、チャット画面でレンダリング済みの表をドラッグ選択すると、ブラウザによってはタブ区切りテキストがクリップボードに入り、正しく列に分かれて貼り付けられることがあります。ただしブラウザやチャットのインターフェースによって挙動が一貫しないため、試す価値はあっても、頼りにするほどではありません。
表が長い回答の中に埋もれている場合
欲しい表が、前後に説明文を挟んだ長い回答の一部であることはよくあります。
文章から表を抽出は、本文に埋もれた表らしき行(パイプ区切りまたはタブ区切り)を自動で検出し、表だけをCSVとして取り出します。回答全体を貼り付けてデータだけを取り出せるので、手作業で行を選択して境界を正しく拾えたか不安になる必要がありません。
変換した表をもとに作業を進める前に、確認しておきたい点が2つあります。
数値が文字列として保存されている。 Excelで列が左揃えで表示されたら、その値は文字列です。原因は多くの場合、元の表に含まれる通貨記号、桁区切り、パーセント記号です。列を選択してデータ → 区切り位置 → 完了で数値に変換できます。
結合セルや折り返しセル。 Markdown表はセルの結合を表現できないため、複雑なデータを扱うモデルは値の繰り返しやセル内の改行でそれらしく見せることがあります。これは変換ツールではなく、人間の判断が必要な部分です。
見出しやリスト、表の周りの説明文など、回答の残りの部分も一緒に持っていく必要がある場合は、貼り付けたAI文章に ** や ## が表示される理由を参照してください。
よくある質問
ChatGPTの表がExcelで1列にまとまるのはなぜですか?
Markdownパイプ表、つまり | 記号を見た目上の区切りに使ったプレーンテキストだからです。Excelは貼り付けテキストをパイプではなくタブで分割するため、各行が1つの値として扱われ、表全体が1つの列に積み上がります。
Markdownの表をExcelに変換するには?
「Markdown表をExcelに変換」に貼り付けて、生成された.xlsxファイルをダウンロードします。ヘッダーを保った本物の行列が生成されるため、開いた後に分割や後片付けをする必要はありません。
AIの表にあるダッシュとコロンの行は何ですか?
Markdownの配置行です。ヘッダーと本文を分け、列の揃え方を指定します。右側にコロンがあれば右揃え、両側にあれば中央揃えです。データではなく書式構文なので、変換時に取り除く必要があります。
変換したセルに余分なスペースが入るのはなぜですか?
Markdownは見やすさのためにセルをスペースでパディングしており、手動で分割するとそのパディングが値の中に残ります。' Europe 'は'Europe'と一致せず、VLOOKUPなどでヒットしないため問題になります。正規のコンバーターはパディングを除去します。手動で分割する場合は、結果をTRIMで囲んでください。
AIの表をGoogle Sheetsに直接貼り付けられますか?
列を保ったままでは無理です。先にCSVに変換し、「ファイル → インポート」から読み込むのが最も確実です。CSVはSheetsがネイティブに解析できる形式で、XLSXのダウンロード→アップロードの往復も避けられます。