FINDB関数:指定の文字が何バイト目にあるかを検索する
FINDB 関数は Excel で用意されている関数の一つで、指定した文字が対象の文字列の中で最初に現れる位置を検索し、バイト数で返します。 FINDB 関数では大文字と小文字は区別されます。半角文字の場合は 1 文字は 1 バイト、全角文字の場合は 1 文字は 2 バイトとして数えます。ここでは Excel における FINDB 関数の使い方について解説します。
※ Excel の対応バージョン : 365 web 2021 2019 2016 2013 2010 2007
※ 公式サイトでの解説 : FINDB 関数
(2021 年 08 月 29 日公開 / 2021 年 10 月 28 日更新)
FINDB関数の使い方
FINDB 関数は対象の文字列の中で検索する文字列が最初に現れる位置を検索します。
FINDB(検索文字列,対象,開始位置)
1 番目の引数には検索する文字列または文字列が含まれるセルを指定します。文字列を指定する場合はダブルクォーテーションで囲んで指定してください。
2 番目の引数には検索を行う対象の文字列または文字列が含まれるセルを指定します。文字列を指定する場合はダブルクォーテーションで囲んで指定してください。
3 番目の引数には検索を行う開始位置を指定します。先頭の文字から調べる場合は 1 を指定します。 FINDB 関数の場合、開始位置はバイト単位で指定します。
例えば検索する文字が "I" 、対象の文字列が "PICNIC" 、開始位置が 1 だった場合、結果として 2 になります。
=FINDB("I","PICNIC",1) --> 2
検索する文字が "I" 、対象の文字列が "PICNIC" 、開始位置が 3 だった場合、結果として 5 になります。
=FINDB("I","PICNIC",3) --> 5
FINDB 関数では大文字と小文字を区別します。検索する文字が "w" 、対象の文字列が "White Flower" PICNIC" 、開始位置が 1 だった場合、結果として 10 になります。
=FINDB("w","White Flower",1) --> 10
なお FINDB 関数で対象の文字列の中で検索文字列が見つからなかった場合には #VALUE! が返されます。例えば検索する文字が "M" 、対象の文字列が "PICNIC" 、開始位置が 1 だった場合、結果として #VALUE! になります。
=FINDB("M","PICNIC",1) --> #VALUE!
FINDB 関数では検索を開始する位置はバイト数で指定し、検索した結果もバイト単位で取得します。半角文字の場合は 1 つの文字は 1 バイト、全角文字の場合は 1 つの文字は 2 バイトとしてカウントされます。
例えば検索する文字が "県" 、対象の文字列が "愛知県名古屋市" 、開始位置 1 だった場合、結果として 5 になります。
=FINDB("県","愛知県名古屋市",1) --> 5
FINDB関数のサンプル
それでは実際に FINDB 関数を使ってみます。 Excel のシートに検索の対象となる文字列を次のように入力しました。
取得した文字列を表示する E3 セルを選択し、次のように入力しました。 FINDB 関数の 1 番目の引数に検索する文字列が入力されたセルとして C3 を指定し、 2 番目の引数に対象の文字列が含まれる B3 セルを指定し、 3 番目の引数に開始位置が含まれる D3 を指定しました。
=FINDB(C3,B3,D3)
Enter キーを押すと、 E3 セルには次のように表示されます。
同じように E4 セルから E5 セルに対しても FINDB 関数を入力すると次のように表示されました。
FINDB 関数の場合は大文字と小文字は区別されるため、 "o" は "O" とは一致しません。
関数の挿入を使ってFINDB関数を入力する
FINDB 関数を入力する場合に関数の挿入を使って行う方法を試してみます。関数を挿入するセルをクリックして選択したあとで、関数の挿入をクリックします。
「関数の挿入」ダイアログが表示されたら関数名のところで「FINDB」をクリックしてください。そのあとで「OK」をクリックしてください。
「関数の引数」ダイアログが表示されたら、 1 番目の引数に検索する文字列を入力します。 1 番目の引数を入力するテキストボックスをクリックして選択してから引数に入力するセルを Excel 上でクリックして下さい。
ダイアログの 1 番目の引数のところに先ほどクリックしたセルが表示されます。
次に 2 番目の引数に検索対象の文字列を入力します。 2 番目の引数を入力するテキストボックスをクリックして選択してから引数に入力するセルを Excel 上でクリックして下さい。
ダイアログの 2 番目の引数のところに先ほどクリックしたセルが表示されます。
次に 3 番目の引数に検索の開始位置を入力します。 3 番目の引数を入力するテキストボックスをクリックして選択してから引数に入力するセルを Excel 上でクリックして下さい。
ダイアログの 3 番目の引数のところに先ほどクリックしたセルが表示されます。
引数の指定が終わると結果としてセルに表示される値も表示されます。最後に「OK」をクリックしてください。
最初に選択したセルに FINDB 関数が入力され、結果がセルに表示されます。
-- --
Excel における FINDB 関数の使い方について解説しました。
( Written by Tatsuo Ikura )

著者 / TATSUO IKURA
初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。