この記事では、エクセルファイルでセルから文字列を抜き出す方法を紹介します。
この記事を読めば、次のような状況に対応できます。
例:下記の表の「名前」の欄の、左の数字だけ抜き出したい
これを下記のようにする方法を紹介します。
関数紹介
今回紹介する関数は「LEFT関数」「RIGHT関数」「MID関数」「FIND関数」です。
それぞれ、文法と使い方を記載しますと
関数名 | 文法 | 機能 |
LEFT | =LEFT([セル],[文字数]) | [セル]に入っている文字列の、左から[文字数]分抜き出す |
RIGHT | =RIGHT([セル],[文字数]) | [セル]に入っている文字列の、右から[文字数]分抜き出す |
MID | =MID([セル],[開始位置],[文字数]) | [セル]に入っている文字列の、右から[開始位置]分の文字から[文字数]分の文字を抜き出す |
FIND | =FIND([セル], [対象], [開始位置]) | [セル]に入っている文字列の、[開始位置]分の文字以降にある最初の[対象]の位置を抜き出す |
となっています。
基本的にはLEFT関数、RIGHT関数、MID関数で文字を抜き出しますが、変則的な場合ではFIND関数を併用します。
次に、具体的な使用例を紹介します。
使用方法
LEFT関数
例:下記の表の「名前」の欄の、左の数字だけ抜き出したい
このとき、LEFT関数を使用します。
対象のセルは「名前」のセルを指定します。
今回はテーブルになっているため、名前の行が対象になっています。
抜き出したい数字は6桁なので、文字数は6とします。
上記のようにセルに書き込みエンターキーを押すと
このように数値だけ抜き出せます!
RIGHT関数
例:下記の表の「名前」の欄の、右の名前だけ抜き出したい
この場合、RIGHT関数を使用します。
対象のセルは「名前」のセルを指定します。
抜き出したい名前は5文字なので、文字数は5とします。
すると名前だけ抜き出せます!
MID関数、FIND関数
例:下記の表の「名前」の欄の、右の名前だけ抜き出したい
先ほどの例では名前がすべて5文字でしたが、もし文字数が違うとRIGHT関数では対応できません。
上の例だと、名前の前の「_」がはいっているか、名前が切れてしまっています。
「_」以降のみを抜き出したいので、この場合はFIND関数とMID関数を使用します。
具体的には =MID([名前のセル],FIND(“_”,[@名前]),[文字数より大きな数字])と入力します。
こうすると、
「[名前のセル]から”_”の位置を見つけて、そこから[文字数より大きな数字]を抜き出す」
という機能となります。
このように入力すると
「_」以降の文字を抜き出せました!
まとめ
最後にまとめを提示します!
- 抜き出したい文字が左に寄っていて文字数が全て同じ場合はLEFT関数
- 抜き出したい文字が右に寄っていて文字数が全て同じ場合はRIGHT関数
- それ以外ではMID関数とFIND関数を組み合わせて抜き出す。
今回の例以外でも、MID関数とFIND関数を組み合わせれば、
多くの場合で文字を抜き出すことができます。
以上、最後まで読んでいただき誠にありがとうございました。
メーカー勤務のサラリーマン
日々の業務を効率的に進めるため、
慣れない々プログラミングを勉強中。
AIを活用した日々の作業削減を目論みブログを開設。