目次
Microsoft Excel(エクセル)のセル内にある特定の文字数をカウントする方法
エクセルでセル内の特定の文字数をカウントする方法(関数)をご紹介します。
ちなみに
=countif()
では検索条件にあてはまる範囲内のセルの数をカウントしてしまいますので使えません。1つのセル内にある文字列の中から特定の文字数をカウントする方法を検討します。
下の図の例では「121」「213」「311」「111」「232」の各A列セル内の「1」の文字数をB列にカウントしています。
A1セル「121」内の「1」の数は2
A2セル「213」内の「1」の数は1
A3セル「311」内の「1」の数は2
A4セル「111」内の「1」の数は3
A5セル「232」内の「1」の数は0
B列のセルに入力する数式
B1セルには
=LEN(A1)-LEN(SUBSTITUTE(A1,”1″,””))
B2セルには
=LEN(A2)-LEN(SUBSTITUTE(A2,”1″,””))
B3セルには
=LEN(A3)-LEN(SUBSTITUTE(A3,”1″,””))
B4セルには
=LEN(A4)-LEN(SUBSTITUTE(A4,”1″,””))
B5セルには
=LEN(A5)-LEN(SUBSTITUTE(A5,”1″,””))
と入力すると1の文字数をカウントしてくれます。
LEN関数
LEN関数とはセル内の文字数をカウントします。
なので
LEN(A1)
はA1セルの文字数をカウントします。
A1セル「121」では文字数は3文字です。
SUBSTITUTE関数
SUBSTITUTE関数とは文字を別の文字に置き換えます。
使い方は
SUBSTITUTE(文字列,検索文字列,置換文字列,置換対象)
(SUBSTITUTE(A1,”1″,””))
の数式では
- 文字列→ここではA1セル
- 検索文字列→A1セル内の1の文字を
- 置換文字列→空白に置き換える
- 置換対象→全ての1を空白に置き換える(省略可能)
という意味です。
ここで
LEN(SUBSTITUTE(A1,”1″,””))
の意味ですが、A1セルの1を空白(文字がない)ように置き換えて文字数をカウントしています。置換対象はA列全ての1を空白に置換するので省略しています。
=LEN(A1)-LEN(SUBSTITUTE(A1,”1″,””))の意味
前半の
LEN(A1)
で全ての文字数をカウントして
後半の
LEN(SUBSTITUTE(A1,”1″,””))
で1以外の文字数をカウントしてLEN(A1)から引いているので
結果として1の文字数をカウントしていることになります。
他にも方法はあるかもしれませんが、この方法でセル内にある特定の文字数をカウントすることができますので試してみてはいかがでしょうか?
コメントを残す