エクセル:特定の文字以前の文字列を抽出する【LEFT関数】【FIND関数】

excel_logo Excel

名簿作成に便利かなぁ…

今回のサンプルは、これです。
名簿に記載されているメールアドレスの@以前をアカウント名にしたい。

 

 

スポンサーリンク

特定の文字より前の文字列を別のセルに抽出する

入力する関数:LEFTとFINDについて

今回のサンプルで使用する関数は、LEFT と FIND です。

LEFT は、選択したセルの値の一番左に表示される文字を抽出するための関数で、
FIND は、選択したセルの値に含まれる文字を見つけるための関数です。

今回は、選択したセルの中にある文字を指定してそれより左にある文字列を抽出したいので、このように書きます。

=LEFT(セル,FIND(“指定した文字”,セル)-1)

(注)「セル」の部分は、データ抽出元のセルを入力します。

具体的に、今回のサンプルでは「E2セル(メールアドレスが入力されているセル)の@以前の文字列を抽出したい」ので、以下の通り関数を入力しました。

=LEFT(E2,FIND(“@”,E2)-1)

-1の意味は、1文字前まで

上記の数式には一番最後に「-1」と書いてありますよね。

これは、「FINDで指定した文字(”@”)の1文字前まで」を抽出するという条件設定です。

「-1」を書かないと、FINDで指定した文字つまり@までを抽出してしまいます。

関数を直接入力する手順

関数を入力するセルを選んで、半角英数字でイコール(=)を入力し、続けて、使用する関数を入力していきましょう。

=LEFT(E2,FIND(“@”,E2)-1)

上記関数をコピペして、E2や”@”を書き換えるのがカンタンかも…。

関数入力結果とその後

関数入力が完了すると下図の画面が表示されます。

後は、関数を適用する範囲にオートフィルすればOK。

 

オートフィル オプションについて

オートフィル後、右下に「オートフィル オプション」アイコンが表示されます。

アイコンをクリックして展開すると4つのオプションからオートフィルの形式を選択できます。

もしもエラーが表示されたら…

関数を手入力すると、下図のようなエラーが表示されることがあります。

これは、「入力した関数に誤りがあるため結果を正しく表示できません」という意味。

入力間違いは無いと思うんだけど、なんで???と思いますか?

今回のエラー サンプルでは、本来半角で入力すべき @ を全角で入力していたことが原因でした。
E2セル(メールアドレス欄)には、@ は全角ではなく半角で入力されているため、FINDで指定した文字が見つけられないということです。

以上 特定の文字以前の文字列を抽出する手順の説明でした。
お役に立てれば幸いです♪