FIND関数の使い方:特定の文字列の位置を調べる関数:Excel関数

FIND関数の使い方:特定の文字列の位置を調べる関数:Excel関数

FIND関数は、特定の文字が文字列の中で何番目の位置にあるかを調べる関数です。

FIND関数を使えば、氏名から姓(名字)を取り出したり、電話番号から市外局番を抽出することができます。

FIND関数の基本的な使い方

対応バージョン:Excel365 2019 2016 2013 2010

FIND関数の書式です。

=FIND(検索文字列,検索対象,開始位置)
※カッコ内の「検索文字列,検索対象,開始位置」を引数といいます。
※引数〔開始位置〕は省略できます。

引数の説明

  • 〔検索文字列〕:検索したい文字列を指定
  • 〔検索対象〕:検索対象の文字列やセルを指定
  • 〔開始位置〕:検索対象の何文字目から検索するか指定。先頭から検索する場合は省略できます

FIND関数の使用例

下記サンプルは、氏名欄に入力されている名前の、姓と名を区切る空白を検索し位置をを求めています。

FIND関数で姓と名を区切る空白を検索

=FIND(“ ”,A2)

引数〔検索文字列〕には空白(全角の空白)を指定、引数〔検索対象〕にはA2セル(氏名)を指定。氏名の先頭から検索するので、引数〔開始位置〕は省略です。

A2セルの内容の場合は、姓と名を区切る全角の空白位置は「3」と求まります。

これで、先頭から2文字が姓と分かったので、「LEFT関数」を用いて氏名から姓を取り出すことができます。

=LEFT(文字列,文字数)で、氏名から「姓」を取り出せる。

C4セルにはエラー表示(#VALUE!)がありますが、これは姓と名を区切る空白が半角だからです。エラー表示(#VALUE!)は、検索文字列が見つからなかったという意味です。

FIND関数のエラー表示

FIND関数は、全角と半角を区別して検索します。また、ワイルドカードを使用しての検索もできません。全角と半角を区別しないで検索したい場合や、ワイルドカードを使って検索する場合は「SEARCH関数」を使用してください。

次は、氏名の場合と同様に、電話番号から各桁を区切る半角ハイフン(”-“)を検索しています。

FIND関数で電話番号を区切るハイフンを検索

引数〔検索文字列〕にはハイフン(”-“)を指定、引数〔検索対象〕にはB2セル(電話番号)を指定。電話番号の先頭から検索するので、引数〔開始位置〕は「1」を指定しています。ただし、開始位置が先頭からの場合は省略可です。

参考までに、2番目の位置にあるハイフンを検索する場合は以下のように関数式を指定します。

=FIND(“-“,B2,FIND(“-“,B2)+1)

FIND関数をネストし、内側のFIND関数で最初のハイフンを探し、求まった位置に「1」を足し算して、外側のFIND関数の開始位置を求めています。

応用範囲は広いので参考にしてください。

FIND関数と同じ分類の関数

FIND関数と同じ系列の関数は以下のページで探せます。

Excel関数カテゴリの最新記事