• ベストアンサー

Excelの関数がわかりません

ExcelでSubtotalによって抽出されたデータを、Sumproduct関数で種類の数をカウントする方法がわかりません。 それぞれ、=subtotal(3,範囲) =SUMPRODUCT(1/COUNTIF(範囲,範囲)) までは、出来上がっておりますが、上記を組み合わせると数式エラーが発生します。 どのように組み合わせればよいか、または、全く違う方法があるのか是非お教えいただきたいと思います。

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

一例です。 =SUM(IF(範囲<>"",1/COUNTIF(範囲,範囲))) 配列数式の為、shift+ctrl+enterキーを入寮完了時に同時押下して下さい。

yanbakan
質問者

お礼

mu2011さん 早速のご回答を有難うございます。 残念ながらお教えいただいたとおりに致しますと、「入力された数式は正しくない」と表示され「OK」を押すと「=SUN(IF(範囲<>""の部分の範囲のところが数式バーのところで黒く反転します。 ただ、式を教えていただきましたので、私自身も何とかしてみます。

yanbakan
質問者

補足

mu2011さん 度々恐れ入ります。 先ほどの式で正常に表示されるようになりました。有難うございました。 ただ、隣の列のオートフィルターで別の選択肢を選んだ場合に抽出されたデータの種類の数を自動的にカウントする為には、どうすればいいですか。 スミマセン。最初に言っておくべきでした。お手数をおかけいたします。

その他の回答 (2)

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

NO2です。 >隣の列のオートフィルターで別の選択肢を選んだ場合に抽出されたデータの種類の数を自動的にカウントする為には、どうすればいいですか。 ⇒続きの質問はマナー違反になりますのでご注意ください。  IF関数でネストすれば可能かと思います。  仮にB列が文字列aaaでフィルタされた場合、  =SUM(IF(B1:B10="aaa",IF(A1:A10<>"",1/COUNTIF(A1:A10,A1:A10))))

yanbakan
質問者

お礼

mu2011さん 有難うございました。お陰さまで解決しました。 >⇒続きの質問はマナー違反になりますのでご注意ください。 すみません。使い初めで、ルールをよく理解しておりませんでした。気をつけます。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.2

NO1です。 >=SUN(IF(範囲<>""の部分の範囲のところが数式バー ⇒「SUN」ではなく「SUM」ですのでお間違えなく。  又、配列数式の為、shift+ctrl+enterキーを入力完了時に同時押下して下さい。(数式が{}で囲われます。) (例){=SUM(IF(A1:A10<>"",1/COUNTIF(A1:A10,A1:A10)))}