XLSX・CSV・TSV間で変換する方法
最終更新:2026-05-22 · 作成:xlstools チーム
フォーマット変換は単純そうで、実際の問題に直面するまでは:特殊文字が文字化け、複数シートのワークブックがデータ喪失、数式消失、日付が勝手にリフォーマット。本ガイドでは各変換で実際に何が起こるか、無損失で変換する方法を解説します。
4つのフォーマット一覧
| フォーマット | 複数シート | 数式 | 書式 | エンコーディング | 典型用途 |
|---|---|---|---|---|---|
| XLSX | ✅ | ✅ | ✅ | UTF-8(バイナリ) | Excel デフォルト;フル機能 |
| XLS | ✅ | ✅ | ✅ | レガシー(バイナリ) | 旧 Excel;ファイル小 |
| CSV | ❌ | ❌ | ❌ | UTF-8 BOM付き | 汎用交換;単一シートのみ |
| TSV | ❌ | ❌ | ❌ | UTF-8 BOM付き | DB インポート;タブ区切り |
無損失変換は XLSX ↔ XLS(双方向)と CSV ↔ TSV(双方向、区切り文字のみ違い)。他はすべて少なくとも1機能を失う。
ステップバイステップ
ステップ1 — ファイルをアップロード
4つのどのフォーマットもソースになれます。ツールは拡張子と内容から検出。
ステップ2 — 出力フォーマット選択
ボタンで選択:
- XLSX(Excel ワークブック) — フル機能、複数シート
- CSV(カンマ区切り) — 汎用、単一シート
- TSV(タブ区切り) — DB インポート用
複数シートファイルから CSV/TSV へ変換する場合、どのシートをエクスポートするか選択 — 他はスキップ。
ステップ3 — ダウンロード
変換後のファイルがダウンロード。出力ファイル名は元ファイル名 + 新拡張子。
各変換で残るもの
XLSX → CSV
- ✅ 値は保持
- ✅ 特殊文字(CJK、アクセント)は UTF-8 BOM で保持
- ✅ 日付は設定可能な形式でシリアライズ
- ❌ 複数シートは喪失(1つ選択)
- ❌ 数式は最終計算値に評価
- ❌ 書式喪失(色、フォント、セル幅)
XLSX → TSV
XLSX → CSV と同じだがカンマの代わりにタブ。DB インポート(PostgreSQL COPY、MySQL LOAD DATA、BigQuery)に最適——値内のカンマで解析問題が起きません。
CSV → XLSX
- ✅ 値は保持
- ✅ 自動型付け(数値は数値、日付は日付)——通常は望ましい
- ⚠️ 単一シート——復元できる複数シート構造なし
CSV ↔ TSV
- ✅ 無損失——区切り文字を変えるだけ
- ✅ エンコーディング保持(依然 UTF-8 BOM付き)
XLS → XLSX
- ✅ 無損失——全機能保持
- ✅ レガシーファイル現代化に推奨
UTF-8 BOM とは何か、なぜ重要か
CSV にはエンコーディングを宣言する組み込み方法がありません。Windows の Excel は UTF-8 BOM(ファイル先頭の3バイトマーカー)で CSV が UTF-8 だと検出 — BOMがないと Excel はシステムロケールから推測し、通常は中国語・日本語・韓国語・アクセント文字が文字化け。
xlstools はデフォルトで BOM を書き込みます。下流ツール(一部 Linux スクリプト、特定 Python パーサー)が BOM を期待しない場合、次で削除可能:
sed -i '1s/^\xEF\xBB\xBF//' file.csv
主な利用シーン
会計システムへの CSV 引き渡し
多くの ERP(NetSuite、Sage、QuickBooks)は CSV を受け CSV を要求。BOM 付き変換で、アクセント付き仕入先名や CJK 顧客名が正しくインポート。
DB インポート用 TSV 準備
PostgreSQL COPY と MySQL LOAD DATA INFILE は TSV を推奨 — 値内のカンマで悩む必要なし。XLSX エクスポートを1クリックで TSV に、クォートルールを弄る必要なし。
レガシー XLS の現代化
一部の HR システムは未だ .xls(Excel 97–2003)を出力。.xlsx に変換で互換性警告なしに現代 Excel で開け、平均ファイルサイズが半減。
落とし穴と対処法
| 問題 | 原因 | 対処 |
|---|---|---|
Excel での CSV インポート後 CJK 文字が ??? |
BOM が削除された、またはツールが ANSI として再保存 | 再変換;Notepad で CSV 編集後 Excel で開かない |
ID の先頭ゼロが消える(00123 → 123) |
CSV → XLSX が列を数値として自動型付け | ソースで列をテキスト書式化、または Excel の「データ取得」で明示的にテキスト型指定 |
| 日付形式が予期せず変わる | Excel ロケールがソースと異なる解釈 | TSV に変換 — TSV ツールは日付を自動リフォーマットすることが稀 |
XLSX → XLSX 往復後数式が #REF! |
ソースに別ワークブック参照(解決できない) | Excel でソースを開き、「形式を選択して貼り付け→値」後に変換 |
プライバシーとセキュリティ
変換は 100% ブラウザ内(SheetJSベース)。ソースと出力ファイルはデバイスから出ません — 機密性の高い給与、PII、財務データに最適。
関連ツール
- フォーマット変換 — 今すぐ変換
- Excelクリーナー — 変換前後でデータクリーニング
- 重複削除ツール — CSV → XLSX 後の重複削除