今回も「文字列を操作する関数」について具体的な例を紹介していこう。今回のテーマは「文字列データの引き算」だ。文字列の足し算(結合)は「&」(アンド)の演算子で手軽に実行できるが、引き算を行うときは関数を使わなければならない。文字列データを関数で加工するときの一例として参考にして頂ければ幸いだ。

文字列データの引き算を行うには?

文字列データから「特定の文字」を削除したいケースもあるだろう。前回の連載では「住所」から「都道府県」を抜き出す方法を紹介した。これに関連する作業として、「住所」から「都道府県以降の住所」を抜き出す場合を例に具体的な手順を紹介していこう。

このような場合は、文字列を置換する「SUBSTITUTE」や「REPLACE」といった関数、ならびに文字数をカウントする「LEN」などの関数を使用する。

  • 文字列の引き算に使える関数SUBSTITUTE、REPLACE、LEN

前回の連載では「住所」から「都道府県」を抜き出す方法を3つ紹介した。どの方法を使っても、以下の図のような結果を得ることができる。

  • 住所から「都道府県」を抜き出した表

単に「都道府県だけのデータが欲しい」というのであれば、これで作業は終了となる。しかし、「住所を都道府県とそれ以降に分割したい」という場合は、「都道府県以降の住所」を抽出する作業も行わなければならない。

まずは、「都道府県以降の住所」を記載するための列を用意しよう。

  • 「都道府県以降の住所」の列を用意

続いて、何らかの方法で「都道府県以降の住所」を作成(抽出)していく。この作業の最も簡単な処理方法は、「住所」から「都道府県」を引き算すればよい、と考えられる。無理を承知で試してみよう。以下の図のように(住所)-(都道府県)の数式を入力する。

  • 強引に「文字列の引き算」を試してみた例

「Enter」キーを押して数式を実行すると、計算を正しく実行できないことを示す「#VALUE!」のエラーが表示される。

  • 計算できないことを示すエラー

このように単純な数式で文字列データを操作できるとよいのだか、残念ながらExcelにそのような機能は用意されていない。「&」で文字を結合(足し算)することは可能であるが、削除(引き算)をする演算子は用意されていない。これを実現するには関数を利用する必要がある。

関数SUBSTITUTEを使った文字列データの引き算

この記事は
Members+会員の方のみ御覧いただけます

ログイン/無料会員登録

会員サービスの詳細はこちら