• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:複数条件を満たす複数のセルから特定文字数を数える)

エクセルで特定文字数を数える数式について

このQ&Aのポイント
  • エクセルのバージョン2007で特定の条件を満たすセル内にある特定文字を数える配列数式を組んでいますが、正確な値が得られず困っています。
  • C3からC100までの範囲で条件で絞り込んだセル内にある特定の文字「@」を数えるために以下の配列数式を使用しています。
  • {=SUM(LEN(IF((A3:A100=E1)*(B3:B100=F1),C3:C100,""))-LEN(SUBSTITUTE(IF((A3:A100=E1)*(B3:B100=F1),C3:C100,""),"@","")))}

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

お書きになった式は、右端の括弧の数が違うなどの投稿時のミスはありますが、基本的に正しいように思えます。ほとんど同じ内容ですが、修正済みの式は次のとおりなので、コピーして再度試してみてください。 {=SUM(LEN(IF((A3:A100=E1)*(B3:B100=F1),C3:C100,""))-LEN(SUBSTITUTE(IF((A3:A100=E1)*(B3:B100=F1),C3:C100,""),"@","")))} あるいは、「,""」や「""」を削除して、 {=SUM(LEN(IF((A3:A100=E1)*(B3:B100=F1),C3:C100))-LEN(SUBSTITUTE(IF((A3:A100=E1)*(B3:B100=F1),C3:C100),"@",)))} 異常が発生する原因は判然としませんが、単純ミスのような気がします。ご質問の式の形ではなかなかマイナスにはなりづらいですが、例えば「""」が「" "」のようにスペースが入っていると、正しく計算しません。 =len(0) の計算結果は「1」になるということも、異常値と関係していそうですね。数式バーに数式が表示されている画像でも載せていただけば、皆さん何か分かるかもしれません。

aquagraphics
質問者

お礼

MarcoRossiItalyさま 早速のご回答、ありがとうございます。 また記載ミスもご指摘いただき、ありがとうございます。恥ずかしい限りで、恐縮です。 さて質問の件ですが、実は先程再度チャレンジしてみたところsumをsumproductに代えてみたり、 またオートフィルを作ってみたりといじっているうちに何故か正確な値を返すようになっており 以降変数部分を何個か代入して試したところすべて正確な値を返すようになりました。 ですので、原因ははっきりとはしませんがMarcoRossiItalyさまがご回答くださったように 特に式自体に根本的な問題はないということですので、ここでこの質問を終わらせていただきたいと思います。 MarcoRossiItalyさまには重ねて御礼申し上げます。 ありがとうございました。

関連するQ&A

専門家に質問してみよう