今回の記事では
関数を使って文字を目的の位置で分割するにはどうしたら良いの?
なるべく難しくない方法で分割する方法を知りたい
文字を区切る方法で関数以外にもっといい方法があるなら知りたい
簡単に出来る方法って何か無いの?
こういった疑問に答えます
✔関数を使って文字を切り分ける方法のテーマ
①関数で文字分割をするならLEFT・MID・FIND関数を活用するのが最適解です
②区切り位置機能を使えば初心者でも簡単に文字を切り分けることが出来ます
この記事を書いているのはOffice歴約20年
現在、エステサロン経営をしながらITを使った現場のマネジメントをしています
「関数を使って文字を切り分ける方法」に関して実体験に基づいて解説しています
今回の内容を一緒にやりたい場合は▼のファイルをダウンロードして下さい
目次を使って読みたい項目へ
関数で文字分割をするならLEFT・MID・FIND関数を活用するのが最適解です
文字列を関数を使って好きな部分で分割するためには3つの関数を活用することが重要です
なぜなら、文字を好きな位置で自由に分割出来る関数が無いからです
では具体的に文字列を好きな部分で区切るための具体例に見てみましょう
こんな風に住所から都道府県名を取り出す場合を想定してみましょう
やり方としてはいくつかあります
まずは「LERFT(レフト)関数」で都道府県を抜き出してみましょう
取り出し方はこれだけです
LEFT関数は「文字列の左から指定した数値分の文字を表示」してくれる関数です
LEFT関数の設定内容は「=LEFT(B5,3)」なのでコレを日本語にしてみましょう
「=LEFT(B5のセルの内容を,左から3文字取り出してね)」こんな感じです
今回の場合は、3文字の県名しか無いので全て同じ方法で取り出すことが出来ました
この方法はすごく簡単ですよね
次はMID(ミッド)関数を使った切り取り方を見てみましょう
MID関数は「指定したセルの開始位置と終了位置の文字を抜き抜いて」くれる関数です
設定方法はシンプルで式は「=MID(B5,1,3)」と設定します
コレを日本語にしてみましょう
「=MID(B5のセルの内容を,1文字目~,3文字目まで表示してね)」という意味です
MID関数も分かってしまえば、使い方は簡単なので特に問題無いですね
ただ、このままだと一つ問題が出てきます
問題点になるのは「切り抜きたい文字が必ず3文字目で終わるとは限らない」ということです
例えば「千葉県は3文字目」までですが、「神奈川県は4文字目」まであるので切り抜きたい位置が変わりますよね
つまり、「県」という文字が何番目にあっても柔軟に抜き取りたいわけです
どうしたら柔軟に「県」の位置を抜き出せるのか考えてみましょう
答えは「県」という文字の場所を特定出来れば問題は解決出来ます
そのためには「FIND(ファインド)関数」を使います
FIND関数は指定した文字が何番目にあるか数字で表してくれる関数です
使い方はこんな感じです
設定方法はシンプルで「=FIND(“県”,B5)」これを日本語にしてみましょう
「=FIND(「県」という文字の位置を表示してね,B5のセルから)」これだけです
「静岡県の県の位置」は左から3番目なので表示されるのは「3」ということです
では次に「LEFT関数」と「MID関数」を県という文字がどこにあっても良いように柔軟にしてみましょう
それぞれのポイントは次の通りです
LEFT関数の場合は後半の「3」の部分ですね
これは3番目に県があるということが分かっているので設定出来ますが、どこに来るの分からない時は、この位置を特定してあげる必要がありますね
次のMID関数の場合は3つ目の引数の「3」です
これはLEFT関数の時と理由は同じなので両方に共通して修正すべき部分です
この問題を解決するには、何番目に「県」が来るのか特定出来る関数とくっつければ良いわけです
つまり、FIND関数とネストさせることで柔軟性な関数に出来るという訳です
では、実際にやってみましょう
こんな風にMID関数にさっきのFIND関数をくっつければOKです
結果は変わらないので分かりづらいですが、さっきより融通がきくようになりました
今度は「3文字以上ある県名」に対して同じ設定をしてみましょう
数式は全く同じですが、ちゃんと4文字以上ある県名を拾ってくれていますね
但し、「京都府」がエラーになるのは住所に「県」が含まれていないのでエラー表示になってしまいます
コレを解決するにはFIND関数の「県」の検索を「府」に変更すれば問題解決です
あとは基本をマスターして応用出来れば活躍の場が広がっていくので、覚えておきたい技ですね
繰り返しになりますが、文字列を関数を使って好きな部分で分割するためには3つの関数を活用することが重要です
区切り位置機能を使えば初心者でも簡単に文字を切り分けることが出来ます
区切り位置機能を使えば関数を使わずに文字列を簡単に分割することが可能です
なぜなら、文字同士を区切る方法が決まっていれば3つの関数を使わなくてもExcelの機能で文字を分けることが出来るからです
今回は名前を使った文字の分け方を例にやり方を順番に見ていきましょう
こんな風に氏名に対して名字と名前がスペース(全角か半角)で区切られている場合などに使える方法です
今回は氏名を「名字と名前」に分けてみましょう
やり方はすごく簡単です
氏名の範囲を選択した状態で「データタブ」の「データツールグループ」にある「区切りの位置」ボタンをクリックします
区切り指定ウィザードというダイアログが開くので、「次へボタン」をクリックします
「区切り文字」グループの「スペース」にチェックを入れ「次へボタン」をクリックします
※スペースにチェックを入れることでスペースで区切れば良いとExcelが理解してくれます
表示先を「E2」にして「完了ボタン」をクリックします
※表示先は変更しなくても問題ありませんが、今回は名字と名前を分けたかったので今回のように設定しました
無事、処理が終わるとこんな風にスペースで前後に区切った名字と名前を表示することが出来ます
都道府県の場合でもスペースなどで区切る位置を指定してあげれば、関数を使わなくても文字列を分割することが出来ます
こっちの方が初心者には優しいと思うので、関数を使った方法と合わせて目的に合った方法でチャレンジしてみて下さい
繰り返しになりますが、区切り機能を使えば関数を使わずに文字列を簡単に分割することが可能です
オススメのExcel関数の解説書 5選
関数を本で学ぶ時は次に上げるものがオススメです
本を購入をオススメしている理由と各本の紹介に関して、下記の記事で詳しく解説しているので合わせて読んでみてください
コメントを残す