コンテンツにスキップ

📊 Excel 貼り付け用テキスト整形

CSV / TSV / 自由テキストを Excel に直接貼り付けできる TSV へ整形。RFC 4180 引用符処理、改行コード LF/CRLF 切替、数式インジェクション対策エスケープに対応。

完全無料 登録不要 ブラウザ完結 5 言語対応 ダークモード

🔒 プライバシーについて

💡 使い方: コピーボタンを押した後、Excel のセルを選択して Ctrl+V (Mac は Cmd+V) で貼り付けます。

📖 つまずきやすいポイント

CSV・TSV・自由なテキストを、Excel にそのまま貼り付けられる TSV に整形します。RFC 4180 の引用符処理、LF と CRLF の切り替え、数式インジェクション対策のエスケープに対応し、処理はブラウザ内で完結します。Excel が壊すのは「読み込むとき」であって、データそのものではありません — 貼り付けた瞬間に自動変換が走るので、整形して渡すだけでなく、受け取る側の設定まで含めて考える必要があります

ケース 何が起きるか どうする
先頭の 0 が消える・日付になる・指数表記になる Excel はセルに入った文字列を片端から「数値か日付ではないか」と解釈しようとします。その結果、0123123 に、1-2 は 1 月 2 日に、1/2 も日付に、1E5 は 100000 に、16 桁を超える数字は下位が 0 に置き換わります。郵便番号・電話番号・製品コード・銀行の口座番号・遺伝子名 (MARCH1 が日付になる問題は学術界で実際に命名規則の変更を招きました) が典型的な被害者です。この変換は貼り付けた瞬間に確定し、元に戻せません — 保存してしまえば情報は永久に失われます。 貼り付ける前に、貼り付け先の列の書式を「文字列」に設定してください。これが唯一確実な方法です — 列を選択して「セルの書式設定」から文字列を選び、それから貼り付けます。順序が逆だと効きません (すでに数値になったセルを文字列に変えても、失われた 0 は戻りません)。ファイルとして渡す場合は、相手に「CSV をダブルクリックで開かないでください」と伝えてください — Excel の「データ」タブからテキストファイルとして読み込めば、列ごとに型を指定できます。渡す前に自分で一度その手順を試しておくと、説明が具体的になります
セル内の改行で行がずれる クリップボード経由の貼り付けでは、Excel はタブで列を、改行で行を分けます — この規則は単純で、引用符の中かどうかを見ません。したがって住所や備考欄のようにセルの中に改行を含むデータは、そこで行が分断されます。1 件だけずれるならまだしも、それ以降の全行が 1 列ずつずれるので、表全体が崩れます。CSV ファイルとして読み込む場合は RFC 4180 の引用符が効くのですが、貼り付けは別経路なので効きません — この違いに気付かないと原因が分かりません。 貼り付け用のデータでは、セル内の改行を事前に置換してください — スペースや / に変えるのが実務的です。Excel の中でセル内改行を作るには Alt+Enter を使いますが、これは貼り付けでは再現できません。改行をどうしても保持したいなら、クリップボードではなく CSV ファイルとして渡し、「データ」タブから読み込んでもらってください — この経路なら引用符で囲まれた改行が正しく解釈されます。どちらの経路を使うかを最初に決めてから整形するのが要点で、途中で切り替えると必ずどこかで壊れます。
= で始まるセルが数式として実行される これは表示の問題ではなく脆弱性ですCSV インジェクションと呼ばれます。攻撃者がフォームの氏名欄などに =cmd|'/c calc'!A1 のような値を入れておくと、その値を含む CSV を管理者が Excel で開いた時点で、管理者の端末でコマンドが実行されますあなたのサーバーは何も悪いことをしていないのに、あなたの CSV が攻撃の運び屋になります。危険な先頭文字は = だけではなく、+-@、さらにタブ (0x09) とキャリッジリターン (0x0D) も同じ扱いを受けます。 このページの「数式エスケープ」を有効にしてください — 危険な文字で始まる値の前にシングルクォートを付け、Excel に文字列として扱わせます。ただし本質的な対策はサーバー側ですユーザーが入力した値を CSV として書き出す処理があるなら、その出力側で同じエスケープを必ず実装してください。これはXSS 対策と同じ構造の問題で、「入力時に弾く」のではなく「出力時にエスケープする」のが正しい設計です (入力時に弾くと、正当な値 — 数式のように見える化学式や会計の -100 — まで拒否することになります)。OWASP がこの攻撃を独立した項目として扱っていることからも、軽視できる問題ではありません。

クリップボード経由の貼り付けには、文字コードの問題が起きないという大きな利点があります — これがこのツールが TSV を出す理由です。ファイルとして渡す場合、Excel は BOM の無い UTF-8 の CSV を、日本語環境では Shift-JIS として読もうとして文字化けします。回避するには UTF-8 with BOM で保存するのが定石ですが、今度は受け取ったプログラム側で 1 列目のヘッダ名の先頭に見えない \ufeff が付きます — 「なぜか id という列が見つからない」という症状はこれで、Python なら encoding="utf-8-sig" で読めば取り除かれます。もう 1 点、TSV は値の中にタブを含められません — RFC 4180 のような引用符の規約が無いためで、値にタブが入りうるデータは、貼り付け前にスペースへ置換してください。区切り文字が値の中に現れないことを保証できるのが、CSV より TSV が扱いやすい理由でもあります。

📖 使い方

  1. 1
    CSV や TSV を貼り付け
    入力欄に元データを貼り付けます。区切り文字は自動判定可能。
  2. 2
    オプションを設定
    Windows Excel なら CRLF + 数式エスケープ ON 推奨。
  3. 3
    変換ボタンを押す
    TSV (タブ区切り) として右側に出力されます。
  4. 4
    コピーして Excel に貼り付け
    コピーボタン → Excel のセルで Ctrl+V。各セルに正しく分割されます。

❓ よくある質問

数式エスケープとは何ですか?
セルが = + - @ で始まると Excel が数式として実行し、CSV インジェクションのリスクがあります。先頭にシングルクォートを付与して文字列として扱わせます。
LF と CRLF どちらを選ぶべきですか?
Windows Excel は CRLF を推奨。Mac/Linux のテキストエディタや Google スプレッドシートでは LF でも問題ありません。
セル内に改行を含めることはできますか?
はい。RFC 4180 引用符処理 ON で、二重引用符で囲まれたフィールドは内部の改行を保持します。
🐛 このツールで問題が発生しましたか?

完全無料・登録不要。再現手順だけでも結構です。届いたご報告は運営者に直接届き、修正の参考にします。

※ 不具合再現のため、ブラウザ情報 (UA / 画面サイズ / 言語 / URL) を自動で送信します