• ベストアンサー

エクセルの関数で。。。

エクセル関数で以下のようなことをしたいのですが。。。 A列に「75」と入っていて、 なおかつB列に「赤」と入っているセルの個数を求める。 関数を教えてください。

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

=SUMPRODUCT(($A:$A=75)*($B:$B="赤")) 行の範囲がある場合は$A$1:$A$100のようにしてください。

non-biry
質問者

お礼

やっぱり、人に聞くと早いものですね。 大変、参考になりました。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

下記でやって見てください。 (データ) (A列) (B列)      (D列) (E列) 点数 評価 点数 評価 74 白 74 赤 75 黄 76 赤 74 赤 74 赤 上記以外の空きセルに 式を=DCOUNT(A1:B6,A1,D1:E2) 答えは2 項目見だしはコピーして、同じ文字になるように注意すること。

non-biry
質問者

お礼

DCOUNT・・・データベースって考え方をしていなかったなー。 そういわれれば、エクセルはデータベースなんですよね。。 目から鱗でした。 どうもありがとうございました。

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.3

こんにちは。maruru01です。 No.1の方の回答の訂正です。 他の質問でもありましたが、SUMPRODUCT関数は、必ず範囲を指定する必要があります。 「$A:$A」のように列全体を指定することは出来ません。 ですから、「行の範囲がある場合」ではなく、必ず何らかの範囲を指定する必要があります。 データが増える可能性がある場合は、それを見越して予め広めの範囲を設定しておきましょう。 (一応、データ量に合わせて範囲を可変にすることも出来ますが、数式は複雑になります。)

non-biry
質問者

お礼

No.2の方といいmaruru01さんと言い、 皆さんすごいですねー。 「データ量にあわせて範囲を可変にする」のは魅力的ですね。でも、とりあえずできる方法で対処してみます。 それでも、やっぱりあると便利だと思ったときにもう一度ご教授願います。

  • shiga_3
  • ベストアンサー率64% (978/1526)
回答No.2

#1さんの回答に補足ですが、列全体を指定するとうまくいかないようです。 1列目から指定できる最大の列数は65535列までのようです。もし最終列(65536列)近くまで使われるのであれば、 =SUMPRODUCT(($A1:$A65535=75)*($B1:$B65535="赤")) とされると良いと思います。 (#1さんへ 先程の同様の質問にも補足させていただきました)

non-biry
質問者

お礼

へぇへぇへぇ・・。 列全体ができないことがあるんですね。 知りませんでした。 回答ありがとうございました。

関連するQ&A

専門家に質問してみよう