- ベストアンサー
セル範囲の文字数カウントについて
セル内の文字数ではなく、複数のセルの特定の文字を数えたいのですが、良い方法はありませんでしょうか? 例として A1からC1までのセルに「AB,C,DED,DED」という文字を、それぞれ3つのセルに同じ内容を入力しています。 数えたい文字は、DEDという文字です。理論上は、一つのセルにDEDという文字が2個存在し、それを三つの セルでカウントするので、DEDが6個存在するという事になります。 これを関数でカウントする方法を教えて頂けませんでしょうか。 DEDという文字を特定のセルE1に入力しておき、E1のセルを参照させる という方法でも構いません。申し訳ありませんが、どうか宜しくお願い致します。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
ちょっと珍しい問題と思うので、色々質問者の場合でテストしてみてください 例データ A1:C1 ABCDDCDD ABCDDCDD ABCDDCDD F1に DD ーー 結果を出すセルで =SUM((LEN(A1:C1)-LEN(SUBSTITUTE(A1:C1,"DD","")))/LEN(F1)) と入れてSHIFT,CTRL,ENTERの3つのキーを同時押しする。 配列数式という。 ーー 式の意味は (A)A1の値をDDを空白(なきもの、削除)で置き換える。 DDの分だけ文字の長さが減る。DDの文字の長さで割ると1セルに何回あったかわかる。 (B)それをA1:C1の範囲で行い各セルの回数を足す。こういうこと(後半(B)のこと)を配列数式はやってくれます。 DDとDDDは違う扱いをすると考えると、VBAでも使わないと出来ないように思う。
その他の回答 (1)
- izmlz
- ベストアンサー率55% (67/120)
=SUMPRODUCT((LEN(A1:C1)-LEN(SUBSTITUTE(A1:C1,"DED","")))/LEN("DED")) でいかがでしょうか? ↓は参考ページです。 エクセル技道場-セル内の単語数カウント http://www2.odn.ne.jp/excel/waza/function.html#SEC12
お礼
ご回答ありがとうございます。こういう記載方法もあるんですね。 また、Webのエクセル技道場に記載があるのは知りませんでした。 別の問題があったときに、是非参考にしたいと思います。
補足
すみません、更に追加で教えて下さい。A列の左側に更に列を 増やして、日付を入力し、特定の日付のみのカウントもしくは、 特定の範囲の日付でカウントをする方法がわかれば教えて頂け ませんでしょうか。 度々、申し訳ありません。宜しくお願い致します。
お礼
ご回答ありがとうございます。出来ました。こうも簡単に出来るとは 思いませんでした。また、式の意味を丁寧に記載して頂いてわかりや すい内容でした。
補足
すみません、更に追加で教えて下さい。A列の左側に更に列を 増やして、日付を入力し、特定の日付のみのカウントもしくは、 特定の範囲の日付でカウントをする方法がわかれば教えて頂け ませんでしょうか。 度々、申し訳ありません。宜しくお願い致します。