Excelを使うにあたり、覚えてる必要があるのが関数です。
Excelの関数には現在480以上もの種類があるとされ、1つ1つ覚えていくのは大変な作業であると言えます。
しかし、使うシーンさえイメージできれば簡単に覚えることができるのが関数です。さらに、関数のスペルを覚えられなくても、頭文字さえ覚えられれば関数の挿入と呼ばれるツールを用いてより簡単に関数を作成することができます。
この記事では関数の1つであるMID関数について解説。
MID関数とは文字列の中央から位置指定し、指定した文字数分文字を抽出する関数のことです。
さらに、MID関数とよくにたMIDB関数との違いや、MID関数と同じように文字列を抽出する関数、LEFT関数とRIGHT関数についても合わせて解説します。
一緒に実践していくことで一気に4つの関数が覚えられますから、ぜひ合わせてやってみてくださいね。
目次
MID関数とは?
MID関数は文字列の中央から抽出する関数です。
MID関数は、RIGHT関数やLEFT関数などの引数に【開始位置】が1つ増えた書式であるため、非常に覚えやすい関数と言えるでしょう。
MID関数の書式は以下の通りです。
=MID(文字列,開始位置,文字数) |
第1引数:文字列
第1引数は文字列を入力します。
マウスで選択、または手入力で文字列の数値を入力します。
MID関数の引数では文字列は入力必須項目です。
第2引数:開始位置
中央からカウントする際に、カウントすべき対象を決めるために入力します。
MID関数の場合開始位置も入力必須項目です。
第3引数:文字数
第2引数には文字数を入力します。
右端から何文字を計測し、表示するかを入力します。
こちらも入力必須項目です。
MID関数の基本的な使い方
東京都渋谷区の渋谷区をMID関数で求めていきます。
その場合の書式は以下の通りです。
=MID(A3,4,3) |
上記の関数を数式バーに問題なく入力し終えたら【Enter】を押します。
文字列の4番目から抽出を開始、その後指定した3つの文字を抽出指示しているため【渋谷区】を抽出することができました。
オートフィルを使いA7までコピーしてみると問題なく関数で求められた文字列が表示されました。
また、A5セルの文字列に関しては港区以降がないため特にエラーになることもなく、2文字で表示されています。
関数の挿入を用いてMID関数を使用する方法
つづいて関数の挿入を使ってMID関数を作ってみましょう。
関数の挿入の位置は数式バーの横にある【fx】と書かれた記号を指します。
まずはこの記号をクリックしましょう。
関数の挿入ダイアログボックスが開くので【何がしたいかを~】の部分を削除し、
検索窓部分に【MI】と入力し検索開始をクリックしましょう。【MID】が表示されたらマウスで選択し【OK】を押します。
関数の引数ダイアログボックスが開いたので、
- 文字数
- 開始位置
- 文字数
を入力していきましょう。
マウスでの選択、手入力どちらを使っても問題なく関数は作れるので、好きな方を使って作成しましょう。
引数を入力したら【Enter】を押します。
手入力と同じように関数の挿入を使ってもMID関数を作ることができました。
同じように渋谷区が抽出されているのが確認できます。
オートフィルを使ってA7の文字列を抽出しても、問題なく表示されているのが確認できます。
また、文字列内に半角・全角の英数字が入っていても、
問題なく抽出することができます。
MIDB関数との違い
MID関数とMIDB関数の違いには、文字列を指定し、そのまま文字として抽出するのか、それともバイト数を使って文字列を抽出するのかがあります。
MID関数 | 文字列の中央から開始位置を指定して抽出 |
MIDB関数 | 文字列の指定した位置からバイト数を使って抽出 |
MIDB関数の書式は以下の通りです。
=MIDB(文字列,開始位置,バイト数) |
第1引数:文字列
第1引数はMID関数と同じく文字列を入力します。
マウスで選択、または手入力で文字列の数値を入力します。
MIDB関数の場合も文字列は入力必須項目となります。
第2引数:開始位置
中央からカウントする際に、カウントすべき対象を決めるために入力します。
MIDB関数の場合も開始位置は入力必須項目です。
第3引数:文字数・バイト数
第2引数には文字数、またはバイト数を入力します。
MIDB関数の場合、この項目も入力必須です。
MIDB関数の基本的な使い方
MIDB関数の使い方も、MID関数とさほど相違はありません。
関数自体もほぼ相違ないため、MID関数とあわせて覚えておくと良いでしょう。
A3セルの【東京都渋谷区1丁目】の文字列から、開始位置を7バイト数とし、抽出するバイト数を4に指定した場合、どこが抽出されるのかを実際にやってみます。
この場合の関数の書式は以下のようになります。
=MIDB(A3,7,4) |
問題なく関数が作成できたら【Enter】を押しましょう。
A3セルの文字列から7バイト数(開始位置)は【渋】となり、4バイトを抽出するため、表示されたのは【渋谷】の2文字であることが表示されました。
バイト数は半角で1バイト、全角で2バイトとして計測されるため、
- 東=2バイト
- 京=2バイト=2+2=4バイト
- 都=2バイト=2+2+2=6バイト
- 渋=2バイト=2+2+2+2=8バイト
- 谷=2バイト=2+2+2+2+2=10バイト
となるため、7は【渋】を表し、その後4バイト抽出することを指定しているので【谷】も表示されるというイメージになります。
MIDB関数を作成したセルをA7セルまでオートフィルを使ってみると、上図のように問題なく文字が抽出されました。
関数の挿入を使ったMIDB関数の作り方
MIDB関数も、当然のことながら関数の挿入を使って作成することができます。
MID関数とMIDB関数の違いを忘れてしまっても、それぞれの違いを確認しながら関数を作ることができるので、ぜひこの機会に関数の挿入を使った書式の作り方も覚えておきましょう。
まずは関数の挿入の場所について確認しておきましょう。
関数の挿入はツールであり、記号をクリックすることで使用できます。
Excelを開いたら数式バーが確認できると思います。
その横に【fx】と書かれた記号があります。これが関数の挿入です。
この部分をクリックすると、
関数の検索と書かれたダイアログボックスが開きます。
【何がしたいかを~】と書かれた部分があらかじめ選択されている状態なのでBackSpaceキーを押して削除し、【MID】と入力し、【検索開始】をクリックしましょう。
MID関数とMIDB関数の2種類が検索結果として表示されました。
MIDB関数を選択し【OK】を押しましょう。
それぞれの引数にそれぞれの項目を入力していきます。
A3セルの東京都渋谷区1丁目を使用したいので【文字列】には【A3】を、【開始位置】【バイト数】は手入力と同じようにそれぞれ【7】【3】を入力し、【OK】を押します。
関数の入力を使う際も、マウスを使ったセル指定も使用できますから、好きな方を使用しましょう。
手入力で関数を作成したときと同様【渋谷】が抽出されました。
オートフィルを使っても問題なA7セルまで表示されました。
MID関数の応用法
MID関数を使用してExcelのファイル名を抽出することも可能です。
ファイルの保存先は【ダウンロード】です。
まずはExcelのファイル名を保存しましょう。
【中央値】と書いて【Ctrl】+【S】で保存しました。
つづいてファイル名のフルパスを取得します。
CELL関数を使って【ファイル名のフルパス】を取得していきます。
この場合の関数の書式は以下の通りです。
=CELL(“filename”) |
つぎにファイル名の開始位置を取得します。
この場合はFIND関数とCELL関数を組み合わせて使います。
ファイル名の開始位置を取得する場合の関数の書式は以下の通りです。
=FIND(“[“,CELL(“filename”))+1 |
つぎにファイル名の文字数を取得します。
この場合もFIND関数とCELL関数を組み合わせて使います。
その際の書式は以下の通りです。
=FIND(“]”,CELL(“filename”))-FIND(“[“,CELL(“filename”))-1 |
最後にファイル名を取得します。
ここでMID関数を使用します。
この場合の書式は以下の通りです。
=MID(B3,B4,B5) |
これでExcelのシート名を抽出することができました。
MID関数以外にも文字を抽出する関数がある
実は文字を抽出してくれる関数には、MID関数だけでなく、
- LEFT関数
- RIGHT関数
と呼ばれる2つの関数の仲間がいます。
英単語の意味の通りLEFTは左、RIGHTは右の意味があり、それぞれ文字列を抽出する場所を指しています。
ここではそんなLEFT関数とRIGHT関数の使い方について解説します。
LEFT関数の基本的な使い方
LEFT関数は左端から文字列をカウントし抽出する関数です。
LEFT関数の書式は以下の通りとなります。
LEFT=(文字列.[文字数]) |
・第1引数:文字列
第1引数は文字列を入力します。
文字列は入力必須項目です。
・第2引数:文字数
第2引数には文字数を入力します。
右端から何文字を計測し表示するかを指定します。
文字数も入力必須項目です。
では実際にLEFT関数を使ってみましょう。
A3セルの文字列を、左端から【3文字】表示させましょう。
この場合の関数の書式は以下の通りです。
=LEFT(A3,3) |
関数を入力し終えたら【Enter】を押します。
A3セルの左端から3文字をカウントした場合は【東京都】であることが表示されました。
オートフィルを用いても問題なく関数をコピーして使うことができました。
関数の挿入を使ったLEFT関数の使い方
手入力で関数を作成する方法のほかにも、関数の挿入と呼ばれるツールを使った作成方法もあります。
ここでは、関数の挿入を使ってのLEFT関数の使い方について解説します。
数式バーの【fx】をクリックし関数の挿入を開きます。
【何がしたいかを~】の部分が選択されているので、そのままBackSpaceキーを押して削除しましょう。
【L】を入力して検索開始を押します。LEFTが表示されたらマウスで選択し【OK】を押します。
関数の引数ダイアログボックスが開くので【文字列】【文字数】を埋めていきます。
入力し終えたら【OK】を押します。
手入力と同じ要領でLEFT関数を作ることができ、さらに同じように左から3文字カウントした【東京都】が表示されました。
オートフィルを使っても、エラーなく表示することができました。
RIGHT関数を使って文字列の右から抽出する
RIGHT関数は、文字列内の右端から指定した文字数分の文字を表示させる関数です。
RIGHT関数の書式は以下の通りです。
RIGHT=(文字列.[文字数]) |
第1引数:文字列
第1引数は文字列を入力します。
文字列は入力必須項目です。
第2引数:文字数
第2引数には文字数を入力します。
右端から何文字を計測し、表示するかを入力します。
文字数も入力必須項目です。
RIGHT関数の基本的な使い方
まずA3セルの住所のを使って右端から文字を抽出してみましょう。
この場合の書式は以下の通りです。
=RIGHT(A3,3) |
関数を入力し終えたら【Enter】を押しましょう。
A3セルの文字列からRIGHT関数を使って【渋谷区】を抽出しました。
オートフィルを使って関数をA7セルまで入力してみましょう。
A7セルまでの項目も、右端から【3】つカウントされた文字列がRIGHT関数によって表示されました。
A5セルの場合は【2】に変更
A6セルの場合、A7のセルの場合は【4】に変更しました。
オートフィルを用いることで、関数の意味を確認しながら作成できるだけでなく、入力ミスを抑えて文字列を表示させることができます。
関数の挿入を使ったRIGHT関数の使い方
関数の挿入を使ったRIGHT関数の作成方法を解説します。
関数の挿入とは、
数式バーの横にある記号のことで、関数のスペルや引数の意味を覚えていなくとも、スムーズに関数を作成することができるツールです。
実際関数の挿入を使って作成してみましょう。
関数の挿入をクリックすると【関数の検索】と表示されたダイアログボックスが開きます。
【何がしたいかを~】の部分を削除したら【RI】と入力し【検索開始】をクリックしましょう。
関数の引数のダイアログボックスが表示されたら各項目を埋めていきましょう。
A3セルの文字列を参照したいので【文字列】には【A3】を記入しましょう。
【文字数】は先ほどと同じように【3】を入力します。
必要項目を入力し終えたら【OK】をクリックします。
手入力と同じように右端から数えて【3】つめの渋谷区が表示されました。
MID関数におけるエラーの解決方法
MID関数を使う際によく見られるエラーの理由と解決方法について解説します。
エラーが起こる理由さえ把握しておけば、慌てることなく対処できますから、この機会にしっかりマスターしておきましょう。
#VALUE!エラー
#VALUE!は入力した数式や参照したセルに問題があることを意味しています。
この図を見てみましょう。
MID関数を入力しなければならないのに対し、数式バーには割り算の余りを求めるMOD関数である【MOD】が入力されています。
MOD関数は数値を入力しなければならないため、文字列を参照したA3セルは参照できないと伝えているのです。
このように、小さな入力ミスによって全く異なる関数が入力され、予測していなかったエラーになることがありますから、関数のスペルに自信がない場合は、関数の挿入を使うことをおすすめします。
#NAME?エラー
#NAME?は関数の数式やスペルミスをしている場合に表示されます。
この図を見てみましょう。
数式バーに入力されているRIGHTのスペルを間違えているのが確認できます。
#NAME?エラーが表示された場合は関数の書式を今一度確認すると良いでしょう。
入力した関数がそのままセルに表示されてしまう
関数はしっかり入力されているのに、なぜかセルにそのまま文字列として入力・表示されてしまうエラーもあります。
これは関数を書く前に【=】が抜けていることが原因です。
関数を作成する場合は、必ず=を付けてから入力するようにしましょう。
######エラー
文字列を入力する場合はあまり見られないエラーの【######】。
これは数値を入力・返した場合に、セルよりも入力・表示された数値が大きいことで起こるエラーです。
この場合はセルの幅を少し広げて上げるだけで解決しますから、慌てず対処しましょう。
まとめ
今回は
- MID関数
- MIDB関数
- LEFT関数
- RIGHT関数
の4つの意味と使い方について解説しました。
応用方法や各種エラーの解決方法についてもまとめているため、覚えることの多い内容だったかもしれません。
しかし、関数を1度でも覚えてしまえば、あらゆる機会に使うことができるようになるので、作業効率もアップし、Excel上級者のような作業もスムーズにこなせるようになりますよ。
ぜひこの記事をきっかけに、Excelをしっかりマスターしてくださいね。