ラベルラベル

文字列入門

FIND関数を見て理解する

文字列の中から指定した文字列を探し、最初に見つかった開始位置を返す関数です。

3つのポイント

  1. 探したい文字列を指定する
  2. 検索する対象文字列を指定する
  3. 見つかった開始位置を番号で返す
例題

開始位置を指定して文字列を探す

サンプル数式

  • 検索文字列
  • 対象文字列
  • 開始位置

この教材では、ExcelとGoogle スプレッドシートで文字数・位置の扱いが一致する範囲を対象にしています。一部の絵文字や特殊文字は対象外です。これは教材側の対応範囲であり、ExcelやGoogle スプレッドシート自体のエラーを示すものではありません。

文字位置(番号は1から。検索では見つかった開始位置を示します)

  1. 1: A
  2. 2: B
  3. 3: C
  4. 4: a
  5. 5: b
  6. 6: c
  7. 7: A
  8. 8: B
  9. 9: C

いまの結果:

7
計算結果
結果セル:D2
入力・条件:3項目
  • 検索文字列B2:「ABC」
  • 対象文字列A2:「ABCabcABC」
  • 開始位置C2:2
この結果になる理由

対象文字列が見つかった文字位置を求めました。

サンプルデータ

対象の文字列を変えてみよう

※ Excel と Google スプレッドシートで結果や挙動が異なる場合、Excel の仕様を基準にしています。

「開始位置を指定して文字列を探す」のサンプルデータ。引数番号は正式引数と教材要素の対応、小さな角丸数字は処理順を表します。
ABCD
1対象文字列検索文字列開始位置結果
27
検索文字列対象文字列開始位置結果セル
①・②・③ 正式引数 / 教材要素1–4 処理の流れ

B2、A2、C2に値を入力すると、結果と処理順が変わります。

3つの引数

色付きの丸数字は、サンプル数式と引数ガイドで同じ引数を示しています。表にも同じ番号があれば、その引数で指定しているセルを示します。

  1. B2表のセル: B2

    探したい文字列です。この例ではB2の「ABC」を検索します。

  2. A2表のセル: A2

    検索対象となる文字列です。この例ではA2の「ABCabcABC」を使います。

  3. C2表のセル: C2

    何文字目から検索を始めるか指定します。この例では2文字目から検索します。

この数式を日本語にすると

A2の「ABCabcABC」を2文字目から検索し、大文字・小文字を区別して次に現れる「ABC」の開始位置7をD2に表示します。

この説明は、最初に表示されているサンプルデータをもとにしています。入力値を変更しても説明文は変わりません。

処理の流れ

手順1〜4を順番に確認しましょう。表内の小さな角丸数字は、対応する手順を示します。

  1. 検索文字列を確認する

    B2

    検索文字列: ABC

  2. 対象文字列を確認する

    A2

    対象文字列: ABCabcABC

  3. 開始位置を確認する

    C2

    開始位置(省略時1): 2

  4. 大小文字を区別して位置を探す

    D2

    結果は7です。D2に表示します。

対応アプリ

  • Excel
  • Google スプレッドシート

関数自体が対応するアプリです。教材例の数式や再計算が、両アプリで同じように動くことを保証するものではありません。

この例の注意点

  • FINDは大文字と小文字を区別して検索します。
  • 開始位置を指定すると、その位置以降だけを検索します。
  • 検索文字列が見つからない場合や、開始位置が0以下または対象文字列の長さを超える場合は#VALUE!になります。
  • FINDでは*や?をワイルドカードとして扱わず、通常の文字として検索します。

一般構文

対応:Excel / Google スプレッドシート ・ 構文:引数名に差あり

Excel

=FIND(find_text, within_text, [start_num])

[] は省略できる引数です。

省略時

start_num
→ 1省略すると、1文字目から検索します。

Google スプレッドシート

=FIND(search_for, text_to_search, [starting_at])

[] は省略できる引数です。

省略時

starting_at
→ 1省略すると、文字列の1文字目から探します。
公式資料・確認範囲

公式資料

未確認

計算結果・入力の扱い・エラー・配列展開

次に学ぶ関数

MID

見つかった位置の次は、その位置から文字を取り出します。

次に学ぶ