区切り位置機能を使わず、関数だけで区切りたい
01:東京都
02:神奈川県
というように、「半角コロン」で区切られた文字列があります。
このとき、コロンより前半部(この場合、01や02)のみ取得したい場合、通常はExcelにある「区切り位置」という機能を使います。
これを使うと任意の文字(今回で言うとコロン)を区切り文字として設定し、その前後(2つあれば3つに分ける)で分割する事ができます。
ただしこれだと後半部も取得してしまいます。
後半部は全く取得しないような形で実現する場合、しかも関数だけで可能となります。
FIND関数とLEFT関数
例えば、セルA2に
01:東京都
と入っているなら、
=FIND(":",A2)
で、 “:”(半角コロン) が先頭から何文字目か(位置)として3が返されます。
そして、LEFT関数を使ってセルの先頭(左端)からFIND関数の結果の直前まで、コロンの手前までを拾えば、希望する結果を得られることになります。
=LEFT(A2,FIND(":",A2)-1)
ユーザー定義関数でも可能
この記事で文字列を分裂させるユーザー定義関数を紹介していますので、これを応用すれば可能でしょう。
この記事では句読点「、」「。」やバイト数で区切りの良いところで区切るようにしています。
関連記事
- 前の記事
- 数字→英字→ひらがな→漢字→カタカナで並び替える
- 次の記事
- 国税庁 CSVデータ作成方法を公表