• ベストアンサー

Excelについて質問があります。

Excelについて質問があります。 添付画像のように、"○"の数を自動的に計算したいと思っております。 よろしくお願い致します。

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

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

一例です。 ご質問の際にはエクセルのグレード(例えば、エクセル2000とかエクセル2007)を記載する様にしてください。 sheet1はA:C列、sheet2はA:B列として、sheet2のB2に以下の数式を設定、下方向にコピー ■エクセル2007以上 =IF(A2<>"",COUNTIFS(sheet1!A:A,$A2,sheet1!C:C,"○"),"") ■エクセル2003以下 =IF(A2<>"",SUMPRODUCT((sheet1!$A$1:$A$100=$A2)*(sheet1!$C$1:$C$100="○")),"")

mmhof4
質問者

お礼

この度は、ありがとうございました。 エクセルのグレードによって入力する式も変わってくるのですね・・・。 知りませんでした。重ね重ね・・・、勉強になります! ネットや本で調べて、なんとなくSUMPRODUCTを使うのだろうな~というのは 解ったのですが、実際に自分の表に当てはめるまでには行きませんね~。 難しい・・・。 また何かありましたら、よろしくお願い致します。 ありがとうございました。

その他の回答 (4)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.5

こんにちは! すでに回答は出ていますので・・・参考程度で! 今回は名前は無視して、○・×等々の数だけ表示できれば良いわけですよね? 余計なお世話かもしれませんが、日付も一緒に表示するようにしてみました。 ↓の画像で説明すると、 Sheet1に作業用の列を1列設けています。 作業列Sheet1のD2セルに =IF(COUNTIF($A$2:A2,A2)=1,ROW(A1),"") という数式を入れオートフィルで下へずぃ~~~!っとコピーします。 そしてSheet2のA2セル(←セルの表示形式は「日付」にしておきます)に =IF(COUNT(Sheet1!$D$2:$D$1000)<ROW(A1),"",INDEX(Sheet1!$A$2:$A$1000,SMALL(Sheet1!$D$2:$D$1000,ROW(A1)))) B2セルに =IF(A2="","",SUMPRODUCT((Sheet1!$A$2:$A$1000=A2)*(Sheet1!$C$2:$C$1000=$B$1))) という数式を入れ、A2・B2セルを範囲指定し、B2セルのフィルハンドルで下へコピーすると 画像のような感じになります。 (数式はSheet1の1000行目まで対応できるようにしています) これでSheet2のB1セルに検索したい条件を入力すると その数が表示されます。 以上、参考になれば良いのですが・・・m(__)m

mmhof4
質問者

お礼

この度は、ありがとうございます。 日付まで自動的に入れることができるのですね! 表も作り込むと、すごいことになりますね。 まだ、頭の中でうまく咀嚼できていませんが、 勉強させて頂きました。 ありがとうございました。 また、よろしくお願い致します。

  • Safe_Mode
  • ベストアンサー率48% (1329/2725)
回答No.3

No.1です。 誤記がありました。 誤:=COUNTIF(E4:E11,"○") 正:=COUNTIF(E2:E11,"○")

mmhof4
質問者

お礼

ありがとうございました。

  • NMZ1985
  • ベストアンサー率30% (41/136)
回答No.2

=COUNTIF(E2:E11,"○") これでE2からE11までの間にある"○"をカウントできます。

mmhof4
質問者

お礼

ありがとうございました。

  • Safe_Mode
  • ベストアンサー率48% (1329/2725)
回答No.1

I3、I4、I5セルにそれぞれ =COUNTIF(E4:E11,"○") =COUNTIF(E12:E17,"○") =COUNTIF(E18:E28,"○") としてやればいいでしょう。

関連するQ&A