今回は特定の文字の抽出方法をご紹介します。
文字列でこの文字だけ使いたい場合や、Excelの住所録で名前の姓と名を分けたい、メールアドレスの@の前の部分を抽出したい等、特定の文字を抽出したい場面があると思います。
今回は文字の取得方法について、3つの方法をご紹介します。
1.名前の姓と名を分ける方法 |
2.名前の姓と名の間に、空白がある場合の分ける方法 |
3.メールアドレスの@から左側を抽出する方法 |
文字の抽出方法に使用する関数は4つです。
LEFT | 文字列の先頭から指定された数の文字を返します。(左から2文字目まで表示したい時など) |
RIGHT | 文字列の末尾 (右端) から指定された文字数の文字を返します。(右から2文字目まで表示したい時など) |
FIND | 指定された文字列を他の文字列の中で検索し、その文字列が最初に現れる位置を左端から数え、その番号を返します。(探したい文字が左から何個目にあるか) |
LEN | 文字列の文字数を返します。(文字の数を数える) |
1.名前の姓と名を分ける方法
例えば名前が伊集院太郎の場合、伊集院と太郎に分けたい場合はLEFTとRIGHTの関数を使います。
上記「セルのB3」伊集院太郎の左側3文字(伊集院)をLEFT(B3,3)で右側2文字(太郎)をRIGHT(B3,2)で抽出する。
名前から氏名の姓を抽出したい場合
1.LEFT関数で左側の文字を抽出したいので、セルC3に=LEFTと入力します。
2.「文字列」には、抽出したい名前が記入されている、セルB3を指定します。
3.「文字数」には左側から指定の文字数まで文字を抽出したいので、姓の文字数3を指定します。
名前から氏名の名を抽出したい場合
1.RIGHT関数で右側の文字を抽出したいので、セルD3に=RIGHTと入力します。
2.「文字列」には、抽出したい名前が記入されている、セルB3を指定します。
3.「文字数」には右側から指定の文字数まで文字を抽出したいので、名の文字数2を指定します。
2.名前の姓と名の間に、空白がある場合の分ける方法
名前に空白(スペース)がある場合の文字の抽出方法です。
名前の姓の部分はLEFT(B3,FIND(” “,B3)-1)で抽出します。
LEFT関数の中にFIND関数を挿入して、名前の中の空白を探して、その空白を起点に左側の文字を抽出します。
名前から氏名の姓を抽出したい場合
1.LEFT関数で左側の文字を抽出したいので、セルC3に=LEFTと入力します。
2.「文字列」には、抽出したい名前が記入されている、セルB3を指定します。
3.「文字数」にはFIND(” “,B3)-1を入力します。
FIND関数を使用し、文字列セルB3の中の空白を” ”使って探します。
探した空白を除外して文字を抽出したいので、文字数を-1します。
※注意点として空白の” ”の中を全角か半角で区別する必要があります。
名前の空白部分が半角の場合は” “の中も半角にする必要があります。
半角スペースなのに全角スペースを関数の中に入れるとエラーになります。
2.名前の名の部分はRIGHT(B3,LEN(B3)-FIND(” “,B3))で抽出します。
RIGHT関数の中にLEN関数とFIND関数を挿入して、LEN関数とFIND関数で文字を探して、LEN関数で探した文字数をFIND関数で検索した文字までの分をマイナスします。
名前から氏名の名を抽出したい場合
1.RIGHT関数で右側の文字を抽出したいので、セルD3に=RIGHTと入力します。
2.「文字列」には、抽出したい名前が記入されている、セルB3を指定します。
3.「文字数」にはLEN(B3)-FIND(” “,B3)を入力します。
LEN関数で探した文字数を、FIND関数で検索した文字の” “までの分をマイナスします。
3-1.LEN関数でセルB3の文字を数えます。
3-2.FIND関数を使用し、文字列セルB3の中の空白を” ”使って探します。
3-3.LEN関数の文字数からFIND関数の空白までをマイナスします。
3.メールアドレスの@から左側を抽出する
メールアドレスのアカウント名だけを抽出したい場合にも、LEFT関数を使用します。
メールアドレスの@から前の部分をLEFT(B3,FIND(“@”,B3)-1)で抽出します。
LEFT関数の中にFIND関数を挿入して、メールアドレスの中の@を探して、@を起点に左側の文字を抽出します。
最後に-1を入れる理由は、結果を返した後の余分な@を消すためです。
メールアドレスの@から前の部分を抽出します。
1.LEFT関数で左側の文字を抽出したいので、セルC3に=LEFTと入力します。
2.「文字列」には、抽出したい名前が記入されている、セルB3を指定します。
3.「文字数」にはFIND(“@”,B3)-1を入力します。
FIND関数を使用し、文字列セルB3の中の”@”探します。
@の前まで文字を抽出したいので、文字数を-1して@を除外します。
以上で文字の抽出方法のご紹介でした。