エクセル初心者
社員のメールアドレスの『@』の位置を何番目か調べたいんだけど、そんなことできる?できれば『@』から前の部分も取り出したいな。
どちらも出来ますよ。まず、文字の位置を調べる【FIND関数】を解説するね! 取り出す作業は他の関数と組み合わせるとできるよ!
Dr.オフィス
エクセルでは、文字の位置を調べることも【FIND(ファインド)関数】を使えばとても簡単です。
FIND関数は、検索したい文字を対象の文字列から探し、何文字目になるか位置を表示します。
場合によっては、文字の検索の開始位置を指定して、対象の文字が何文字目か位置を表示します。
- FIND関数に検索する文字の入力
- 検索する文字列を指定
- 検索する位置を指定(無ければ先頭から検索される)
検索する文字列は『” ”(空白)』や『データの入ったセルを参照』なども出来ます。
さっそくFIND関数を使って、検索したい文字の位置を解説しながら、調べてみましょう。
FIND関数は『エクセル関数のレベルアップ』におすすめです。
ほかにも脱初心者が知っとくべき関数を43個紹介した記事があるので、ぜひチェックしてみてください。
※本記事は『OS:Windows10』画像は『Excelのバージョン:2019』を使用しています。
目次
文字の位置を調べるFIND関数
FIND関数は、文字の位置を調べることが出来ます。
平仮名や漢字、アルファベットの大文字や小文字も検索文字列として指定できます。
FIND関数とは
=FIND(検索文字列,対象,開始位置)
意味:検索文字列を対象の中から検索し、開始位置(無ければ先頭)から何文字目か位置を表示します。
FIND関数は、検索したい文字が何文字目かを調べることができ、そして他の関数と組み合わせながら使うとさらに便利な関数になります。
FIND関数を使い文字の位置を調べてみよう!
社員名簿のメールアドレスを使い解説します。
↑メールアドレスンの『@』が、先頭文字から何文字目に位置しているかFIND関数を使い求めてみましょう。
↑E3のセルに
=FIND(“@”,D3,1)
を入力しましょう。
指定した検索文字列が『@』などの文字の場合は、文字の前後に【””】ダブルクォーテーションで囲みましょう。
↑『5』が表示されました。
『@』は先頭から数えて『5文字目』ですね。
↑E3のセルをオートフィルでコピーしましょう。
すべての『@』が先頭から何文字目か調べることがとても簡単に出来ました。
開始位置を指定してから文字の位置を調べるには?
開始位置を指定して文字の位置を調べてみましょう。
小文字『e』が何文字目か調べます。
↑開始位置はF3のセルの『5』を参照します。
↑E3のセルに
=FIND(“e”,D3,$F$3)
を入力しましょう。
↑D3のメールアドレスの先頭から『5番目の文字』の位置より、『e』が先頭の文字から何文字目にあるか調べます。
↑参照しているF3の『$』は絶対参照です。
オートフィルでコピーした下の式もF3のセルから参照しなければなりません。
なので、参照を動かさないように固定しています。
絶対参照についてはこちら【エクセルのショートカットキー】数式に絶対参照を設定する「F4」を参考にしてみてくださいね。
↑オートフィルでコピーしましょう。
↑D8のセルを見てみましょう。
先頭から4文字目に『e』がありますが、これは検索対象外になります。
開始位置が『5』文字目からなので、『e』の位置は『10文字目』と表示されています。
開始位置を指定しても、数え始めるのは先頭文字からだよ!注意してね!
Dr.オフィス
FIND関数と他の関数を組み合わせてみよう!
メールアドレスの『@』から前の部分を取り出してみましょう。
今回は【LEFT(レフト)関数】と組み合わせます。
LEFT関数は、文字列の先頭から指定された文字数分の文字列を表示してくれます。
↑E3のセルに
=LEFT(D3,FIND(“@”,D3)-1)
を入力しましょう。
『FIND』で『@』が先頭から何文字目にあるか探します。
『@』が何文字目か分かったら、そこから『-1』します。
『-1』をしないと、『@』も含めてしまいます。
↑『@』から前の部分が取り出せています。
LEFT関数についての詳しい解説はこちらエクセルで文字列を抽出することができる関数を簡単解説!!を参考にしてみてくださいね。
まとめ
FIND関数は、文字列の位置を調べる関数でした。
他の関数を組み合わせることで、さらに便利な関数にもなります。
エクセルで文字列の位置を調べる時はFIND関数を使ってみてくださいね。