Excel。セルの中の特定の文字を数えるには、どうやったらいいの?
<LEN関数+SUBSTITUTE関数>
簡単そうに思えて、実際に求めてみようとすると、なかなか難しいということが、
Excelでも結構ありまして、今回ご紹介する、
セルの中の特定の記号や文字の数を数えるには、どうしたらいい?というもの、
その一つだと思います。
Excelは、文字を検索することは出来ます。
また、セル内の文字数は数えることは出来ます。
ところが、セルの中の特定の文字数を数えるとなると、どうしたらいいでしょうか?
ということで、下記の表があります。
お相撲さんの星取表を参考にしてありますが、別々のセルそれぞれに、
○とか●とかが入っているならば、
COUNTIF関数で、算出することができますが、セルの中となると、
COUNTIF関数を使って数えることが出来ません。
そこで、少しアイディアが必要になってくるわけです。
“○”を数える方法を考えてみましょう。
とりあえず、セル内の文字数を数える。これで、セル内の文字数がわかります。
そして、今度は、”○”を空白に置換してあげて、そのセル内の文字数を改めて数えます。
その数を先程の全体の文字数から引いてあげれば、
セルの中の”○”を数えることが出来るはずです。
では、実際にやってみましょう。
C3をクリックしてLEN関数ダイアログボックスを表示しましょう
セルの中の文字数を数えるのは、簡単なので、
まずは、”○”を除いた数を求めていきますので、
文字列のボックスの中に、置換する関数である、
SUBSTITUTE関数をネストしていきますので、
SUBSTITUTE関数ダイアログボックスを入れていきましょう。
名前ボックスの▼をクリックして、ネストしていきましょう。
文字列は、$B3。これは、横方向・縦方向に、
この数式をオートフィルでコピーするので、複合参照で設定しておきます。
検索文字列は、”○”。
置換文字列は、””
あとは、OKボタンをクリックしましょう。
5と算出されましたね。
C3の数式は、
=LEN(SUBSTITUTE($B3,"○",""))
となっております。これが、”○”以外の文字の数ですので、
あとは、全体の文字数から引いてあげればいいので、C3の数式を修正していきます。
=LEN($B3)-LEN(SUBSTITUTE($B3,"○",""))
というように、=(イコール)あとに、LEN($B3)と追加します。あとは、オートフィルで数式をコピーしましょう。
あとは、D列は●の数を数えるように修正していき、
休みは、”ヤ”の数を数えるように修正していきます。
D3の数式は、
=LEN($B3)-LEN(SUBSTITUTE($B3,"●",""))
E3の数式は、=LEN($B3)-LEN(SUBSTITUTE($B3,"ヤ",""))
として、オートフィルで数式をそれぞれコピーしましょう。これで、完成しました。
このように、意外と、セルの中の特定の文字を数えるというのは、
ちょっとアイディアがいるようですね。