今回は、RIGHT 関数 の応用編として、セルの右から特定の文字列を抜き出す関数の使い方をご紹介していきます。
なお、当サイトでは Excel ではなく Numbers を使って解説しています。
目次
右から特定の文字までを抜き出す
今回の例では、メールアドレスから「ドメイン」を抜き出してみましょう。
ちなみに、【MID関数・FIND関数】文字列の途中から数文字分を抜き出す とやり方が違うだけで、結果は同じになります。
手順としては、RIGHT 関数 を使用して「@」の次の文字以降を全て取り出します。このとき取り出す文字数は LEN 関数と FIND 関数 を使って求めます。
RIGHT 関数 | 文字列の左端から指定した文字数を抜き出す |
LEN 関数 | 文字数を求める |
FIND 関数 | 検索文字が最初に現れる位置を求める |
まずは各関数の式をおさらいしましょう。
RIGHT 関数 の式の確認
= RIGHT ( 対象文字列, 文字列の長さ )
対象文字列 | 文字列を抜き出すセルを指定 |
文字列の長さ | 抜き出す文字数を指定 |
LEN 関数 の式の確認
= LEN ( 対象文字列 )
対象文字列 | 文字数を数える文字列を指定 |
FIND 関数の式の確認
FIND 関数は、「検索文字列」「対象文字列」「開始位置」の要素で構成されていますが、「開始位置」を省略しますと、「対象文字列」の先頭からの位置を求められます。
= FIND ( 検索文字列, 対象文字列 [, 開始位置] )
開始位置 は省略ができます。
検索文字列 | 検索する文字列をのセルを指定 |
対象文字列 | 「検索文字列」の位置を求める文字列を指定 |
(開始位置) | 「対象文字列」内で検索を開始する位置を指定 |
関数を書く
まず、関数の式の立て方を順を追って整理してみましょう。
- RIGHT 関数の「対象文字列」を指定
- RIGHT 関数の「文字列の長さ」に LEN 関数を入れ子にする
- LEN 関数の「対象文字列」にセルを指定
- 文字数を算出するために、FIND 関数をマイナスする
- FIND 関数の「検索文字列」に “@” を入力
- FIND 関数の「対象文字列」に「検索文字列」の位置を求める文字列のセルを指定
Step 1
セルにカーソルを合わせ、「= RIGHT」と入力するか、「挿入」メニューから「新規数式」を選択します。
「テキスト」から RIGHT を選択するか、検索窓に「RIGHT」と入力しても探すことが出来ます。「関数を挿入」をクリックします。
Step 2
まずは RIGHT 関数の「対象文字列」を指定しましょう。ここではメールアドレスが入力されているセル「A2」を選択します。
= RIGHT ( A2, 文字列の長さ )
Step 3
RIGHT 関数だけですと文字数を算出することができませんので、RIGHT 関数の「文字列の長さ」に、文字数を求めるための LEN 関数を入れ子にします。
= RIGHT ( A2, LEN ( 対象文字列 ) )
Step 4
LEN 関数の「対象文字列」に、文字数を数える文字列を指定します。
= RIGHT ( A2, LEN ( A2 ) )
Step 5
続いて、特定の文字が最初に現れる位置を求める FIND 関数を入れ子にし、これをマイナスすることで、文字数を算出します。
= RIGHT ( A2, LEN ( A2 ) − FIND ( 検索文字列, 対象文字列, 開始位置 ) )
Step 6
FIND 関数の「検索文字列」に “@” を入力します。
= RIGHT ( A2, LEN ( A2 ) − FIND ( “@“, 対象文字列, 開始位置 ) )
・関数で文字列(テキスト)を指定するときは、ダブルクォーテーション「 ” 」で囲むのを忘れないようにしましょう。
Step 7
FIND 関数の「対象文字列」に「検索文字列」の位置を求める文字列のセルを指定します。
※ なお、ここでは FIND 関数の「開始位置」は省略するため削除します。
= RIGHT ( A2, LEN ( A2 ) − FIND ( “@“, A2 ) )
・FIND 関数の「開始位置」を省略しますと、「対象文字列」の先頭からの位置になります。
Enter を押して式を反映させたら、黄色のハンドルを下にドラッグしてセルを自動入力させます。
入力結果
Enter を押して式を反映させたら、指定した条件の通りになっているか確認しましょう。