SEARCH関数との違いと使い分け

似た機能を持つSEARCH関数との違いを理解しておくと、状況に応じた適切な選択が可能になる。
■大文字小文字の区別・ワイルドカードの有無
主な違いは以下の通りだ。
(FIND関数)
- 大文字小文字を区別
- ワイルドカード不可
(SEARCH関数)
- 大文字小文字を区別しない
- ワイルドカード使用可能
柔軟に探したい場合はSEARCH、厳密に判定したい場合はFINDが向いている。
■どちらを使うべきかの判断基準
判断の目安:用途を整理して使い分けることで、不要なエラーや誤判定を防げる。
- ID・コード管理 → FIND関数
- 曖昧検索 → SEARCH関数
- データチェック → FIND関数
- テキスト検索 → SEARCH関数
FIND関数使用時の注意点

便利な関数である一方、仕様を理解していないとエラーや誤動作の原因になる。
■見つからない場合はエラーになる
検索文字が存在しない場合、#VALUE!エラーが表示される。
対策:
- IFERROR関数でエラー処理
- 事前にSEARCHで存在確認
- 入力ルールを統一
実務ではエラー表示をそのままにしない設計が重要である。
■全角・半角や表記ゆれの影響
FIND関数は表記の違いに敏感である。
データ整形(TRIM、SUBSTITUTEなど)と併用すると安定した結果が得られる。
まとめ
FIND関数は、文字列の中から指定した文字の位置を取得できるシンプルかつ実用性の高い機能である。大文字小文字を区別する特性を理解し、MIDやLEFTと組み合わせれば、データ抽出や整形作業を自動化できる。また、SEARCH関数との違いを踏まえて使い分けることで、より正確なデータ処理が実現する。
まずは身近な顧客リストや商品データで試し、位置情報を起点とした処理の便利さを体感することが習得への近道である。
本記事の内容を以下で簡単におさらいしよう。
- FIND関数とは
- 文字列の中から指定した文字が何文字目にあるかを数値で返す関数。
- 位置情報を取得できるため、抽出や分割処理の起点になる。
- 大文字・小文字を区別するのが特徴。厳密一致が必要なID管理などに向いている。
- 基本構文
- =FIND(検索文字列, 対象文字列, [開始位置])
- 開始位置を指定すれば、同じ文字の2回目以降も検索できる。
- 基本例:
- =FIND(“-“, A1) → 「ABC-123」の「-」は4文字目。
- 複数回検索の手順:
- 1回目の位置を取得
- その数値+1を開始位置に指定
- 再度FINDを実行
- 応用例(氏名分割):
- 姓:=LEFT(A2, FIND(” “, A2)-1)
- 名:=MID(A2, FIND(” “, A2)+1, LEN(A2))
- SEARCHとの違い:
- FINDは大小区別あり・ワイルドカード不可。
- 注意点:
- 文字が見つからないと#VALUE!エラー。IFERRORで対処し、表記ゆれに注意する。
構成/編集部







DIME MAGAZINE











