文字列中にある特定の文字(または文字列)の数を数える

 例えば「なまむぎなまごめなまたまご」の中に「な」という文字を探して、いくつあるかを数えるという問題です。Excelでもよくある問いの一つですが、その答えも同様のものとなります。
 早速の答えですが、文字列(「文章」という列に記録されているものとします)の中に含まれる「な」という文字の文字数を求める式の例として

Len([文章])-Len(Replace([文章],"な",""))

 が挙げられます。「もとの文字列の文字数」から、「もとの文字列から、探そうとする文字をすべて消去した文字列の文字数」を差し引くことで、含まれている文字数が求まる、というわけです。

 また、文字列(「文章」という列に記録されているものとします)の中に含まれる「なま」という文字列の数を求める式の例は

(Len([文章])-Len(Replace([文章],"なま","")))/2

となります。「なま」という文字は2文字ですので、上記の例と同じように単純に文字数を比較すると、1回含まれるだけでその差は2となってしまいます。そこで、引き算の結果を2で割るというわけです。

 ちなみにこの方法で「あああああ」という文字列中の「ああ」という文字列の数を数えるとすると

(Len("あああああ")-Len(Replace("あああああ","ああ","")))/2

という式になりますが、この結果は「2」となります。Replace関数のはたらきをよく知らないと「2.5」とかになるんじゃないかと心配になりますが、その点は心配無用です。