Excelの文字列を抽出する場合には3つの関数が存在します。
その種類は、
右端から文字列を抽出するRIGHT関数
左端から文字列を抽出するLEFT関数
文字列の中央から開始位置を指定して抽出するMID関数
になります。
どの関数も非常に似た書式であるため、この記事をきっかけにまるごと3つ覚えてることをおすすめします。
さらに、記事の後半では、上記3つの関数を使った際に見ることの多いエラーと対処法についいて解説。
オフィスワークのときでも慌てないよう、記事の流れと合わせて実際に試しながら、関数の種類と共におさえておきましょう。
目次
RIGHT関数を使って文字列の右から抽出する
テーブルデータ内の文字列を右から抽出するためには、【RIGHT関数】を使って求めることができます。
RIGHT関数は文字列内の最後の部分(右端)から指定した文字数分の文字を表示させる関数です。
また、同じような関数にRIGHTB関数がありますが、これは文字列の最後の部分(右端)から指定したバイト数を表示する関数です。
文字数か文字のバイト数かによって使い方が異なりますから、違いをしっかりとおさえておきましょう。
RIGHT関数を使用するにあたり、入力しなければならない引数が2つあります。
それぞれの引数について、RIGHT関数の書式と合わせて解説します。
RIGHT=(文字列.[文字数]) |
第1引数:文字列
第1引数は文字列を入力します。
マウスで選択、または手入力で文字列の数値を入力します。
RIGHT関数の引数はどちらも入力必須です。
第2引数:文字数
第2引数には文字数を入力します。
右端から何文字を計測し、表示するかを入力します。
RIGHT関数の引数はどちらも入力必須です。
RIGHT関数の基本的な使い方
このように、住所が書かれたテーブルデータがあるとします。
それぞれの住所とRIGHT関数を使って、各文字列の右端の文字を求めてみましょう。
まずはA3の住所の文字列に対して、右端から文字を抽出してみましょう。
この場合の関数は以下の通りです。
=RIGHT(A3,3) |
関数を入力し終えたら【Enter】を押しましょう。
A3の文字列からRIGHT関数を使って同じように抽出しました。
オートフィルを使って、同じ条件をA7のセルまで入力してみましょう。
それぞれ右端から【3】つカウントされた文字列がRIGHT関数のセル内に表示できました。
文字が切れている部分は、オートフィルで入力した関数の【3】の部分を【4】に変更することで、文字が切れることなく表示することができます。
A5セルの場合は【2】に変更
A6セルの場合、A7のセルの場合は【4】に変更しました。
このように、オートフィルを用いることで、より早く関数を入力できるようになるだけでなく、修正する部分を最小限に抑えて文字列を表示することができます。
関数の挿入を使ったRIGHT関数の使い方
手入力ではなく、関数の挿入を使ったRIGHT関数の作成方法を解説します。
関数の挿入とは、
数式バーのこの部分にあるツールのことで、関数のスペルや引数の意味を覚えていなくとも、
このツールを使うことでスムーズに関数を作成することができます。
では関数の挿入を実際に使って見ましょう。
関数の挿入をクリックすると、【関数の検索】と表示されたダイアログボックスが開きます。
【何がしたいかを~】の部分を削除したら【RI】と入力し【検索開始】をクリックしましょう。
関数の引数のダイアログボックスが表示されたら、手入力で関数を作成したときと同様、各項目を入力していきましょう。
A3セルの文字列を対象としたいので、【文字列】には【A3】をマウスで選択、または手入力で記入しましょう。
【文字数】は先ほどと同じように【3】を入力します。
引数部分にそれぞれ必要項目を入力し終えたら【OK】をクリックします。
手入力と同じように右端から数えて【3】つめの渋谷区が表示されました。
LEFT関数の基本的な使い方
RIGHT関数が右端からカウントし文字列を抽出するのに対し、LEFT関数は左端から文字列をカウントし抽出します。
LEFT関数の書式は以下の通りとなります。
LEFT=(文字列.[文字数]) |
第1引数:文字列
第1引数は文字列を入力します。
マウスで選択、または手入力で文字列の数値を入力します。
LEFT関数の引数はどちらも入力必須項目です。
第2引数:文字数
第2引数には文字数を入力します。
右端から何文字を計測し表示するかを指定します。
LEFT関数の引数はどちらも入力必須項目です。
RIGHT関数の引数とほとんど変化がないので、非常に覚えやすい関数と言えるでしょう。
では実際にLEFT関数を使ってみましょう。
RIGHT関数と同様、同じようにこのデータを使って求めていきます。
A3セルの文字列を、今度はLEFT関数を使って左端から【3】文字表示させましょう。
この場合の関数の書式は以下の通りです。
=LEFT(A3,3) |
関数を入力し終えたら【Enter】を押しましょう。
A3セルの左端から3文字をカウントすると【東京都】であることが求められました。
オートフィルを用いても、全て東京都で表示されました。
関数の挿入を使ったLEFT関数の使い方
では、関数の挿入を使ってのLEFT関数の使い方をみていきましょう。
数式バーのこの部分をクリックし、関数の挿入を開きます。
【何がしたいかを~】の部分が選択されている状態なので、そのままBackSpaceキーを押して削除します。
LEFT関数の【L】を入力して検索開始を押しLEFTが表示されたらマウスで選択し【OK】を押します。
関数の引数ダイアログボックスが開くので、マウス、または手入力で【文字列】【文字数】をそれぞれ入力していきましょう。
入力し終えたら【OK】を押します。
手入力と同じ要領で、LEFT関数を使うことができ、左から3文字カウントした【東京都】が表示されました。
オートフィルを使っても、エラーが起きることなく関数を入力することができました。
MID関数を使って文字列の中央から抽出する
RIGHT関数では文字列の右端から抽出、LEFT関数では文字列の左端から抽出したのに対し、MID関数は文字列の中央から抽出する方法になります。
MID関数は、RIGHT関数やLEFT関数の引数より1つ増えた書式であるため、非常に覚えやすいですから、この機会に合わせておさえておきましょう。
MID関数の書式は以下の通りです。
=MID(文字列,開始位置,文字数) |
第1引数:文字列
第1引数は文字列を入力します。
マウスで選択、または手入力で文字列の数値を入力します。
MID関数の引数では文字列は入力必須項目です。
第2引数:開始位置
中央からカウントする際に、カウントすべき対象を決めるために入力します。
MID関数の場合開始位置も入力必須項目です。
第3引数:文字数
第2引数には文字数を入力します。
右端から何文字を計測し、表示するかを入力します。
こちらも入力必須項目です。
MID関数の基本的な使い方
先ほどと同じように、こちらのデータを使用してMID関数を使っていきましょう。
東京都渋谷区の渋谷区をMID関数で求めていきます。
その場合の書式は以下の通りです。
=MID(A3,4,3) |
問題なく入力し終えたら【Enter】を押します。
文字列の4番目をカウントし、文字数を3つ抽出するよう指示した結果、東京都渋谷区の渋谷区を抽出することができました。
オートフィルを使ってみると、それぞれA列の文字列に対して、開始位置が4番目、文字数を3つの指定された文字が表示されました。
A5セルの文字列に関しては、港区以降がないために、2文字表示になっています。
開始位置を3や2にすることで、表示される文字列もそれぞれ変化がありますから、返したい文字列のどの部分を指定すれば良いのかをしっかり考慮して使うようにしましょう。
関数の挿入を用いてMID関数を使用する方法
つづいて関数の挿入を使ってMID関数を作ってみましょう。
同じデータを使ってMID関数を関数の挿入を使って作成してみます。
まずは数式バーにある関数の挿入記号をクリックしましょう。
【何がしたいかを~】の部分を削除し、
【MI】と入力し検索開始をクリックします。【MID】が表示されたらマウスで選択し【OK】を押しましょう。
関数の引数ダイアログボックスが開いたので、それぞれ必要項目を入力していきましょう。
この場合も、マウスでの選択、手入力どちらを使っても問題ありません。
問題なく入力できたら【Enter】を押しましょう。
手入力と同様、関数の挿入を用いてMID関数を作成することができました。
同じように渋谷区が抽出されているのが確認できます。
オートフィルを使ってA7の文字列を抽出しても、手入力と同様、同じように表示されているのが確認できます。
このように、RIGHT関数、LEFT関数、MID関数はそれぞれ指示する部分は違っても、どれかひとつでも覚えられればどこから文字を抽出することができるかを判断しやすいと言えます。
どの関数もほとんど変わらない書式であるため、ぜひ合わせて覚えておくと良いでしょう。
全角・半角の区別なく抽出する方法
RIGHT関数、LEFT関数、MID関数はすべて、全角・半角関係なく抽出することができます。
RIGHT関数
LEFT関数
MID関数
どれも文字列内の半角数字が入力されている部分を指定しましたが、問題なく抽出することができました。
全角・半角で抽出する際に、それぞれ表示される文字数が変更となるのは、バイト数をカウントする関数です。
それぞれ、
- LENB関数
- RIGHTB関数
- LEFTB関数
- MIDB関数
と、関数のスペル最後に【B】が付く関数になります。
文字をそのまま抽出するのか、それとも文字数のバイト数を抽出するのかによって使う関数も異なりますから、その違いを一緒に覚えておくのがおすすめです。
Excelの文字列抽出におけるエラーの対処法
ここでは
- RIGHT関数
- LEFT関数
- MID関数
におけるエラーの理由と対処法について解説します。
どの関数も基本的なエラーの理由や対処法は同じなので、エラーごとに解説します。
#VALUE!エラー
#VALUE!エラーは入力した数式、または参照したセルに問題があることを示しています。
たとえばこの画像で見てみましょう。
MID関数を入力しなければならないのに対し、数式バーには数値を除数で割った際の余りを求めるためのMOD関数の【MOD】が記入されています。
MOD関数では数値を入力しなければならないため、文字列を参照したこの関数では参照できないといったエラーが起きているのです。
関数には現在480種以上あると言われているため、入力ミスなどによって全く別の意味を持った関数が入力されてしまい、エラーになることがありますから、入力ミスを防ぐためにも、関数の挿入を使って使いたい関数を検索して書式を完成させると良いでしょう。
#NAME?エラー
#NAME?エラーは主に、関数の数式や関数のスペル間違いをしている場合に表示されます。
この画像を見てみましょう。
RIGHT関数を作成したいのに対し、数式バーに入力されている関数はRIGHTのスペルが間違えているのが確認できます。
このように、#NAME?エラーが表示された場合は、関数の書式を今一度確認すると解決しますよ。
入力した関数がそのままセルに表示されてしまう
このように、関数はしっかり入力されているのに、なぜかセルにそのまま文字列として入力・表示されてしまうことがあります。
これは関数を書く前に、数式バー内に【=】が抜けてしまっていることが原因です。
関数を作成する場合は、必ず=を付けてから入力するようにしましょう。
######エラー
文字列を入力する場合にはあまり見られないエラーの【######】エラー。
これは数値を入力・返した場合に、セルよりも入力・表示された数値が大きいことで起こるエラーです。
この場合はセルの幅を少し広げて上げるだけで解決しますから、慌てず対処しましょう。
まとめ
今回はExcelの文字列をそれぞれの場所から指定・抽出する
- RIGHT関数
- LEFT関数
- MID関数
について解説しました。
どれも関数の書式はほとんど変わらないため、非常に覚えやすく使い勝手も良いので、オフィスワークに留まらず、自宅でのパソコンワークにも多く活用できますよ。
ぜひこの機会に3つの関数を覚えて、これからの作業効率をぐんとアップさせましょう。