CSV・文字コード

タブ区切りファイルがExcelで1列になる場合

タブ区切りのテキストファイルをExcelで直接開くと、環境や拡張子によっては1行全体が1列へ入ることがあります。ファイルをCSVへ無理に書き換えず、区切り文字がタブであることを確認してから読み込みます。

タブ区切りファイルとは

タブ区切りでは、列と列の間にタブ文字を使います。見た目は広い空白に見えますが、通常のスペースとは別の文字です。拡張子は .txt.tsv が一般的ですが、作成元によっては .csv で渡されることもあります。

Excelは「テキスト(タブ区切り)」形式を扱えます。ただし、ダブルクリックで開いたときに区切りが自動認識されない場合は、明示的にタブを指定します。

CSV診断でタブを確認する

CSVの文字コードと区切り文字を確認する方法でファイルを選びます。結果の区切り文字が「タブ」、コンテキストが delimiter-tab なら、各列はタブで分かれている可能性が高い状態です。

診断が CSV_STRUCTURE_OK でも、Excelの開き方が合わなければ1列表示になることがあります。これはファイル破損とは限りません。

Excelへ正しく読み込む手順

  1. 元ファイルを複製して原本を残す
  2. Excelで空のブックを開く
  3. 「データ」から「テキストまたはCSVから」を選ぶ
  4. 対象の .txt.tsv.csv ファイルを選ぶ
  5. 文字コードを診断結果と作成元の仕様に合わせる
  6. 区切り文字として「タブ」を選ぶ
  7. プレビューで見出しと各行の列数を確認する
  8. コード、郵便番号、電話番号などは必要に応じてテキスト型にする
  9. 読み込み後、原本と行数を比較する

古い「テキストインポートウィザード」を使う場合も、元のデータ形式を「区切り記号付き」にし、区切り記号で「タブ」を選びます。

スペース区切りと間違えない

列の間が広く見えても、複数のスペースで位置を合わせた固定幅テキストの場合があります。タブを選んだプレビューで列が分かれないときは、テキストエディターでタブ表示を有効にするか、作成元へ仕様を確認します。

行ごとにタブ数が違う場合は、末尾の空欄、値の欠落、途中改行などが原因かもしれません。CSV_COLUMN_MISMATCHCSV_PARSE_WARNING が出る場合は、問題行を特定してから作成元の出力を直します。

CSVへ変換する場合の注意

タブ区切りをカンマ区切りへ変換する必要があるなら、正しく読み込んだブックを別名でCSVへ保存します。単純な検索置換でタブをカンマへ変えると、値の中のカンマ、引用符、改行を正しく処理できないことがあります。

保存後は、CSVがExcelで1列になる場合の区切り文字確認でカンマ区切りとして読めるか再確認します。複数シート、数式、セル書式はCSVへ保持されないため、元ブックも残してください。

参考情報

CSV・文字コード

テーマを見る