オンライン Excel エディター
無料で使う

TEXTSPLIT 関数:構文、例とエラーの解決

2026-10-13 更新 · 無料 · Excel と Google Sheets に対応

構文

=TEXTSPLIT(text, col_delimiter, [row_delimiter], [ignore_empty], [match_mode], [pad_with])

クイック回答

TEXTSPLIT は 1 つのセルを複数にスピルします:=TEXTSPLIT(A2, ",") なら "a,b,c" が 3 列に広がり、行区切り文字を足せば下方向にも展開します。元データが変わると再計算される動数式——Microsoft 365 と Excel 2024 限定で、Excel 2021 以前にはありません。

構文

=TEXTSPLIT(text, col_delimiter, [row_delimiter], [ignore_empty], [match_mode], [pad_with])
引数意味
text分割したいセルまたはテキスト——必須。A2、"a,b,c"、任意の数式の結果。
col_delimiterテキストを横方向(列)へスピルさせる区切り文字——カンマ区切りなら ","。引用符で囲むか、セル参照で指定します。行だけに分割したいときは空のまま(カンマだけ残す)にします。
[row_delimiter]テキストを縦方向(行)へスピルさせる区切り文字——";" や改行の CHAR(10)。省略可能。
[ignore_empty]TRUE は連続する区切り文字を 1 つにまとめ、空白が空セルを残しません。既定の FALSE は空白ごとに 1 セル確保します。
[match_mode]1 にすると区切り文字の一致で大文字小文字を区別しません。既定の 0 は完全一致——"X" は "x" を拾いません。
[pad_with]不揃いなグリッドの欠けを埋める値——既定は #N/A。"n/a" のようなプレースホルダーや "" がよく使われます。

地域設定によっては、引数がコンマではなくセミコロンで区切られます:=TEXTSPLIT(A2; ",")。コンマを小数点として使う国ではこれが標準です。

基本例

=TEXTSPLIT(A2, ",")

定番の分割:「Smith, John」の入ったセルが並んだ 2 つのセルになって返ってきます。自動スピル。区切り位置ウィザードも形式を選択して貼り付けも不要——A2 が変わるたびに数式が再計算します。

=TEXTSPLIT(A2, , ",")

col_delimiter を空にして行区切りだけ渡す:同じカンマ区切りリストが今度は下方向にスピルし、1 行に 1 値。1 つのセルを 1 列へ展開する手早い方法——住所、タグ、あらゆる詰め込みリストに。

=TEXTSPLIT(A2, {",", ";"})

配列定数なら区切り文字をいくつでも一度に渡せます:カンマもセミコロンも、どんな組み合わせでも分割。TEXTSPLIT を入れ子にする必要なし——1 つの数式で不揃いなデータを処理します。

=TEXTSPLIT(A2, ", ", , TRUE)

ignore_empty を TRUE にすると連続する区切り文字が 1 つにまとまります:"a,,b" は空の中央を挟む 3 セルではなく 2 セルに分割。既定の FALSE は空白ごとに 1 スロット確保——隙間がノイズなら TRUE へ。

TEXTSPLIT が返すのはすべてテキストです——セルからスピルした "123" は文字列の 123 であって数値ではありません。計算に使う前には VALUE で包むか、元の列を残してその場で変換してください。

よくあるエラーと修正方法

症状最も一般的な原因修正方法
#SPILL!スピル範囲がふさがれています:TEXTSPLIT は右または下の一画の空きが必要で、A3 に 1 文字でもあれば邪魔になります。結果が落ちる領域を空けるか、数式をもっと空いた行・列へ移します——出力は元データとともに伸びるので、結果の下にデータを置かないで。
#NAME?お使いの Excel が Microsoft 365 でも Excel 2024 でもない——TEXTSPLIT は 2022 年登場の新関数で、2021 以前は存在しません。スペルミスの可能性も。=TEXT と入力してオートコンプリートに TEXTSPLIT があるか確認。なければバージョンを上げるか、区切り位置ウィザードで一回きりの分割を。
テキストがそのままスピルして分割されない区切り文字が一致していない:TEXTSPLIT は既定で大文字小文字を区別(match_mode 0)し、"X" は "x" を拾いません。見えない空白で ", " が "," に合わないことも。実際の区切り文字を確認し(LEN で隠れた空白を暴けます)、大小混在なら match_mode 1 を追加:=TEXTSPLIT(A2, ",", , , 1)。
結果に空セルが現れる元データに連続した区切り文字があり、ignore_empty が既定の FALSE で空白ごとに 1 セル確保されています。ignore_empty を TRUE に:=TEXTSPLIT(A2, ",", , TRUE)——連続する区切り文字が 1 つにまとまります。
不揃いな行の末尾に #N/A が出る行と列を同時に分割すると、短い行は既定で #N/A でグリッドに補完されます——これはエラーではなく pad_with の既定値の働きです。最後の引数に独自の埋め値を渡します:=TEXTSPLIT(A2, ",", ";", TRUE, , "")——空文字列や "n/a" のプレースホルダーを。

分割された数値はテキストです:TEXTSPLIT が "123" に対して返すのは文字列で、SUM は存在しないものとして扱います。計算には VALUE をかぶせるか、先に元の列の文字列型数値を直してください。

TEXTSPLIT と区切り位置の比較

TEXTSPLIT区切り位置ウィザード
形式動数式——元が変われば結果も変わる一回きりの操作——実行したら固定
元データ元のセルはそのまま、結果は隣にスピル元の列をその場で上書き——実行前にバックアップ
複数区切り文字配列定数で自由に組み合わせ {",", ";"}タブ・カンマ・セミコロン・カスタム 1 文字にチェック
使えるバージョンMicrosoft 365 と Excel 2024全バージョン
=TEXTSPLIT(A2, ",", ";")

1 つの数式で列区切りと行区切りを同時に渡し、詰め込まれたテキストをグリッドへ展開——ウィザードは一度に一方向しか選べず、データに合わせた再実行もありません。範囲が分かっていてその場で上書きしていい一発作業はウィザード、数式駆動・自動更新・双方向の分割は TEXTSPLIT と使い分けます。

Google Sheets での TEXTSPLIT

Google Sheets に TEXTSPLIT はありません——等価関数は SPLIT で、同じく 1 つのセルを配列へスピルしますが、引数の順序と既定動作が違います。

  • 基本形は =SPLIT(A2, ","):第 2 引数が区切り文字です。第 3 引数 split_by_each は既定 TRUE で区切り文字を 1 文字ずつ扱う——",;" と書けばカンマもセミコロンも同時に分割(TEXTSPLIT の配列定数に相当)。
  • remove_empty_text は ignore_empty に対応:=SPLIT(A2, ",", TRUE, TRUE) と第 4 引数を TRUE にすると連続する区切り文字が 1 つにまとまります。
  • 結果は同様にスピル配列で、元データが変われば再計算——この点は Excel の TEXTSPLIT と同じです。
  • 逆方向の TEXTJOIN も Sheets にあります:詰め込みには TEXTJOIN、展開には SPLIT と、セットで使えます。

制限と上級テクニック

  • TEXTSPLIT は Microsoft 365 と Excel 2024 以降限定——Excel 2021・2019・2016 には一切なく、#NAME? がバージョンのサインです。
  • 結果は 1 つの動的配列:中の 1 セルだけ編集はできず、ブロック全体が同時に変わります。全体を参照するにはスピル参照の A2# を使います。
  • 不揃いなグリッドは既定で #N/A で穴埋め:pad_with に "" やプレースホルダーを渡せば、レポートにエラーコードが咲きません。
  • 分割された数値や日付はテキスト:SUM や AVERAGE は無視します。計算前に VALUE で変換を。
  • セル内改行も分割できます:CHAR(10) を行区切りにすれば 1 行の詰め込みデータが複数行へ——「折り返して全体を表示する」を忘れずに。

TEXTSPLIT はデータ取り込みのラストワンマイルとして扱います:先に元テキストを整えて(空白・改行・区切り文字の統一)、それから分割。グリッドの品質は食べさせる文字列の品質そのもの——元がきれいなら、結果も揃います。

関連ツール

関連関数

よくある質問

Excel の TEXTSPLIT は何をしますか?

セルの中身を区切り文字で分割し、隣接するセル範囲へスピルさせます:=TEXTSPLIT(A2, ",") なら "a,b,c" が 3 列に展開され、row_delimiter を足せば下方向にも複数行へ。元データが変わると再計算される動数式です。

どの Excel バージョンに TEXTSPLIT がありますか?

Microsoft 365 と Excel 2024 です。TEXTSPLIT は 2022 年登場なので、Excel 2021 以前には一切ありません——#NAME? がバージョン不足のサインです。その場合は区切り位置ウィザードか SEARCH+MID の組み合わせで代用します。

TEXTSPLIT が #SPILL! を返すのはなぜ?

スピル範囲がふさがれているからです:結果には一画の空きが必要で、右や下に何か 1 つでもあれば止まります。結果の着地エリアを空けるか、数式をもっと空いた場所へ移動してください。

列ではなく行に分割するには?

col_delimiter を空にして行区切りだけ渡します:=TEXTSPLIT(A2, , ";")——最初の区切り文字を省略すると、テキストは下方向へスピルし 1 行に 1 値ずつ並びます。

複数の区切り文字を同時に使うには?

配列定数です:=TEXTSPLIT(A2, {",", ";"})——カンマもセミコロンも区切り文字として働き、自由に混ぜられます。配列にはさらに足せます:{",", ";", "|"}。

結果の #N/A を別のものに置き換えるには?

#N/A は不揃いなグリッドを埋める pad_with の既定値です。最後の引数で好きな値に変えられます:=TEXTSPLIT(A2, ",", ";", , , "") や "n/a" のようなプレースホルダー。

TEXTSPLIT は Google Sheets で使えますか?

使えません——Sheets に TEXTSPLIT はなく、等価関数は SPLIT です:=SPLIT(A2, ",")。第 3 引数 split_by_each は既定で 1 文字ずつの分割、第 4 引数 remove_empty_text が ignore_empty に対応します。

自分のファイルで試す準備はできましたか?

Excelのテキストを列に分割を開く — 無料