WindowsやMicrosoft 365(Excel・Word・PowerPoint)、Gmailなどのおすすめのテクニックの紹介、PC操作時のハプニング解決法の紹介、PDFの無料配布、動画解説などお役に立てると思うことをやっています。

まなびっと

特定の文字列の位置を検索するSEARCH関数の基本的な使い方とFIND関数との違い

 

文字列のどの位置に特定の文字列が含まれているかを調べる関数として、Excel関数には、SEARCH関数FIND関数とが用意されています。

 

この記事では、SEARCH関数の基本的な使い方と、大文字と小文字を区別するか、ワイルドカードが使えるかといった、SEARCH関数とFIND関数との違いを詳しく説明します。

 

 

特定の文字の位置をFIND関数で調べる

SEARCH(サーチ)関数の書式

SEARCH(サーチ)関数は、文字列のどの位置に特定の文字列が含まれているかを調べる関数です。

[=SEARCH( 検索文字列 , 対象 [,開始位置] )]という書式で表します。

 

検索文字列
検索する特定の文字・文字列を指定します。

対象
特定の文字列を検索するセル(対象となる文字列)を指定します。

開始位置
何文字目から特定の文字列を検索するか
を対象の先頭文字を1として、数値で指定します。
省略した場合は1を指定したとみなされます。

 

サーチ 書式
SEARCH関数 検索文字列 , 対象 [,開始位置] 

 

[ - ]ハイフンの位置を調べる

SEARCH関数を使って、-(ハイフン)の位置を調べます。

例として、manabi-info という文字列にある-(ハイフン)の位置をFIND関数を使って調べてみます。

 

SEARCH関数を入力する

C3セルにSEARCH関数を入力します。

 

C3セルに、=seと入力します。

すると、SEARCHという表示が現れるので、SEARCHを選択し、Tabキーを押します。

 

 

=SEARCH( に続けて入力

C3セルに、=SEARCH(と入力されます。

 

 

これに続けて、検索文字列としてB3セルをクリック、

 

 

,(半角カンマ)を入力し、対象としてA3セルをクリックします。

 

 

Enterを押し、式を確定します。すると、7が返されます。

 

これは、-(ハイフン)7番目にあるということを示しています。

 

[ bi ]の位置を調べる

SEARCH関数は、文字列の位置を調べる関数です。

そこで、今度は、biの位置を調べてみます。

B3セルにbiと入力します。

 

C3セルに5が返されました。

 

 

FIND関数との違い

同じように、文字列のどの位置に特定の文字列が含まれているかを調べる関数として、FIND関数があります。

 

そこで、SEARCH関数FIND関数違いを説明します。

 

大文字と小文字を区別するか

SEARCH関数は、大文字と小文字区別しません

一方、FIND関数は、大文字と小文字区別します

 

では、例を挙げて説明します。

例1MANABI-info という文字列があるとします。この文字列に含まれるiの位置を調べます。

 

SEARCH関数とFIND関数でそれぞれ調べた結果は次のようになります。

大文字と小文字を区別しないSEARCH関数は、大文字のIの位置である6を返します。

 

一方、大文字と小文字を区別するFIND関数は、小文字のiの位置である8を返します。

 

 

例2MANABI-info という文字列があるとします。この文字列に含まれるaの位置を調べます。

大文字と小文字を区別しないSEARCH関数は、最初の大文字のAの位置である2を返します。

 

一方、大文字と小文字を区別するFIND関数は、小文字のaという文字列が存在しないので#VALUE!を返します。

 

【関連記事】よく起きるエラーの種類と原因、そして解決法

 

ワイルドカードが使えるか

SEARCH関数は、ワイルドカード使えます

一方、FIND関数は、ワイルドカード使えません

 

こちらも、例を挙げて説明します。

例3MANABI-info という文字列があるとします。この文字列に含まれるi*の位置を調べます。

ワイルドカードが使えるSEARCH関数は、大文字Iの位置である6を返します。

 

一方、ワイルドカードが使えないFIND関数は、#VALUE!を返します。

 

 

SEARCH関数は、大文字と小文字を区別しないため、小文字iからはじまる文字列の位置を調べたい場合はin*などで調べるといった工夫が必要となります。

in*として調べると、iの位置である8が返されます。

 

SEARCH関数とFIND関数との違いまとめ

SEARCH関数とFIND関数との違いを簡単にまとめると次のようになります。

この記事で取り扱った、-(ハイフン)を調べるような場合は、どちらの関数で調べても違いはありません

 

一方、大文字と小文字を区別する必要がある場合や、ワイルドカードを使用する場合は適切な方を選ぶ必要があります。

 

いずれも、文字列操作に便利な関数なので、このような違いがあることを知っておいてください。

 

おすすめ記事

参考文献

  • B!