Excel 文字列が何個含まれているかを調べる方法
ExcelにはFIND関数のように特定の文字列が含まれているかを調べる関数はありますが
何個含まれているかを調べる関数はありません。
この記事では関数を組み合わせて実現する方法を紹介します。
手順
ISERROR関数とLEN関数とSUBSTITUTE関数を使用します。
=IFERROR((LEN(<文字列>)-LEN(SUBSTITUTE(<文字列>,<対象>,"")))/LEN(<対象>),0)
この数式で<文字列>中に<対象>が何個、含まれるかを算出します。

「朗」は4回、「山田」は2回、「次郎」は3回、「山本」は1度も登場しません。
数式の詳細説明
式を分解するとこのようになります。

№ | サンプル中の列 | 数式 | 説明 |
---|---|---|---|
① | M | LEN(<文字列>) | <文字列>の文字数 |
② | N | SUBSTITUTE(<文字列>,<対象>,"") | <文字列>から<対象>を削除した文字数 |
③ | O | LEN(②) | ②の文字数 |
④ | P | ①-③ | <文字列>から<対象>の 削除前後の文字数の差。 <文字列>中に<対象>があるだけ 文字数に差が出ます。 <対象>が1文字であれば この時点で個数になっています。 |
⑤ | Q | LEN(<対象>) | <対象>の文字数 |
⑥ | R | ④÷⑤ | ④は<対象>の文字数×該当数なので <対象>の文字数を除算して 該当する個数のみにします。 |
該当する件数が0の場合は⑥の計算で#DIV/0!になるので、最後にIFERROR関数で0にします。
ディスカッション
コメント一覧
まだ、コメントがありません