- ベストアンサー
Excelの関数「セルに含まれるある文字をカウントしたい」
例えばカンマ区切りのデータを、 エクセルで最初に区切ることをせずに開いたとします。 そのとき、A列にだけデータがはいってきますが、 そのA列を参照して「カンマの数」を数えることはできるでしょうか。 A列の値 数式の結果 a,b,c,,,,g = 6 となるイメージです。 関数でなくても、なにかいい方法がありましたら アドバイスいただければと思います。 よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんな方法はどうでしょう? カンマが半角であるという前提で・・・ これを全角に置き換え、半角のときの文字列バイト数と置き換え後の文字列バイト数の差を求める。 =LENB(SUBSTITUTE(A1,",","、"))-LENB(A1) "、" の部分は文字列の中になさそうな全角文字なら、何でもよさそうですが・・・。 ハズしていたらすみません。
その他の回答 (2)
- telescope
- ベストアンサー率54% (1069/1958)
回答No.3
#2の回答と考え方は同じですが、 A列の値のカンマを削除して、元の文字数から引けばカンマの数を数えられます。 =LENB(A1)-LENB(SUBSTITUTE(A1,",",""))
質問者
お礼
そうですね。 こちらのほうが考え方が軽快かもしれません。 ありがとうございました。
- taknt
- ベストアンサー率19% (1556/7783)
回答No.1
マクロを使わないとダメでしょう。
質問者
お礼
早速のご回答ありがとうございます。 やはりそうですよね・・・。 エクセル関数であってもよさそうなのに。と思ってしまいます。 ありがとうございました。
お礼
アドバイスありがとうございます。 これはいいです! カンマを置換してLENの差を見るというのは考えたのですが、 置換を関数でという発想がありませんでした。 ありがとうございます。