TEXTSPLIT関数 – 文字列を区切り文字で分割し配列で返す関数
1. 使い方と活用例
TEXTSPLIT関数は、指定した区切り文字に従って文字列を分割し、セルの配列として返す関数です。
カンマやスペース、改行などによって区切られたデータを行または列に展開したいときに非常に便利です。
行方向・列方向どちらにも分割可能で、動的配列に対応しています。
2. 基本の書式
=TEXTSPLIT(text, col_delimiter, [row_delimiter], [ignore_empty], [match_mode], [pad_with])
3. 引数の説明
- text – 分割対象の文字列を指定します。
- col_delimiter – 列方向の区切り文字を指定します(例:”,” や ” “)。
- [row_delimiter] – (省略可能)行方向の区切り文字を指定します(例:CHAR(10) や “;”)。
- [ignore_empty] – (省略可能)空の要素を無視するかを指定します。TRUE(空は無視)、FALSE(空も配列に含める)。
- [match_mode] – (省略可能)区切り文字の大文字小文字の区別。0=区別する(既定)、1=区別しない。
- [pad_with] – (省略可能)分割後の行や列に不足がある場合に補完する文字を指定します。
4. 使用シーン
- CSV形式の文字列をセルごとに分割して表示
- スペースやカンマで区切られた複数項目の分割
- 改行を区切りとして複数行に展開
5. 応用のポイント
行と列の両方の区切りを組み合わせることで、2次元の表形式に分割することも可能です。
pad_with
引数を使うと、行数や列数に差がある場合でも指定の文字で空白を埋めることができます。
動的配列として返されるため、スピル表示で自動的に複数セルに展開されます。
6. 具体例とその解説
=TEXTSPLIT("リンゴ,バナナ,みかん", ",")
この式では、「,(カンマ)」を区切り文字として3つの果物名を分割し、横方向(列)に表示します。
結果は3列1行の配列として展開されます。
=TEXTSPLIT("A;B;C|D;E;F", ";", "|")
この式は「;」で列、「|」で行を区切る2次元配列を返します。
A〜Fの6要素が3列×2行に分割され、表形式でセルに展開されます。
7. 関連関数の紹介
- TEXTJOIN関数 – セルや文字列を区切り文字で結合する関数
- TEXTAFTER関数 – 区切り文字の後の文字列を取得する関数
- TEXTBEFORE関数 – 区切り文字の前の文字列を取得する関数
- SPLIT関数(Google Sheets) – 同様の機能を持つGoogleスプレッドシートの関数
8. まとめ
TEXTSPLIT関数は、区切り文字による柔軟な文字列分割を可能にする強力な関数です。
列方向・行方向の両方に対応し、複雑なデータの整形や分解に適しています。
動的配列にも対応しており、スプレッドシート上でのデータ展開がスムーズに行えます。
9. 対応バージョン
TEXTSPLIT関数はExcel 365およびExcel 2021以降で利用可能です。
それ以前のバージョンでは使用できないため、代替としてMID、FIND、LEFT、RIGHT関数などを組み合わせる必要があります。