TEXTSPLIT 関数とは何か?
先日、とある勉強会でテーマが文字列関数でした。
具体的には郵便番号のような「860-0019」を前半3桁と後半4桁に分割することを目的としていました。
このケースで言うと、
で分割するのがオーソドックスでイジーな方法かと思います。
メールアドレスをドメイン名と分割する場合、「@」を区切り記号として、分割する必要があるので、上記の方法が使用できませんでした。
そこで、下記のような3つのパターンがすぐに思い浮かびました。
リボンのデータから「区切り位置」を使用する
PowerQueryで加工する
VBAで独自の関数を作成する
実際に、その勉強会では共有を借りてPowerQueryで処理をしました。
が、0で始まる番号が数値型として認識されて、そこの整形に時間を要しました。
そこで、「区切り記号 エクセル関数」とグーグルで検索したところTEXTSPLIT 関数がヒットするではありませんか。
それでは今回はTEXTSPLIT 関数について紹介したいと思います。
TEXTSPLIT 関数っていつからあったのか
実は先日のスクーの田中亨先生の講義を録画で見ていたら、ちょうどTEXTSPLIT関数が紹介されていました。
エクセルに実装されたのが今年の3月で、一般ユーザーが使用できるようになったのが最近のようです。
ですので、私がググって使用できたのは私の使用環境が365だったからです。
2019以前のオフィスでは使用できません。
具体的な使用方法
これはすごくシンプルで、第一引数に分割する文字列、第二引数に区切り記号を入れるだけです。
E1セルに=TEXTSPLIT(D1,",")と入力すると、区切り記号で分割され、さらにF1セルにスピってますね。
応用その1
例えば、下記のように1つのセルに区切り記号を2つ以上使用しないと行けないケースで、TEXTSPLIT関数が力を発揮します。
実は第2引数の区切り記号は配列で入れることができます。
ちょっと言葉だけでイメージしにくいと思いますので、さっそくやってみますね。
見事にD列、E列とスピってますね。
これは便利です。
応用その2
これはよく名簿で見る典型のケースですけど、下記のようなセルがあるとします。
これを構造化データにする場合も、TEXTSPRIT関数で簡単にできます。
レコード数が少なかったら手作業で十分ですけど、レコード数が多くなったら、これは大変な作業です。
そこでTEXTSPRIT関数の出番です。
このように第3引数に改行コードを入れることで、行方向にも分割することができます。
これはめちゃめちゃ使えそうですね。
ということで、今回は自分の備忘録の意味も含めてTEXTSPRIT関数を紹介しました。
この記事が気に入ったらサポートをしてみませんか?