- ベストアンサー
Excel2010関数 複数条件で人数カウント-2
- Excel2010で複数条件を指定して人数をカウントする関数を作成したい。
- 条件は、B列に名前が入っており、C列には午前午後の出席情報が入っている。
- 作業列を使わず1つのセルで出席人数をカウントしたい。
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
お示しの表のとおりで例えば10行目までのデータがるとしたら次のような式になりますね。 =SUMPRODUCT((A1:A101<>"")*(C1:C101="○"))+SUMPRODUCT((A2:A102="")*(C2:C102="○"))-SUMPRODUCT((A1:A101<>"")*(A2:A102="")*(C1:C101="○")*(C2:C102="○"))
その他の回答 (4)
- KURUMITO
- ベストアンサー率42% (1835/4283)
ごめんなさい。回答No4です。最初の文章が間違いていました。 お示しの表のとおりで例えば101行目までのデータがるとしたら次のような式になりますね。
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
偶数行に○の入っている数 =SUMPRODUCT((MOD(ROW(C2:C21),2)=0)*(C2:C21="○")) 奇数行に○の入っている数 =SUMPRODUCT(MOD(ROW(C2:C21),2)*(C2:C21="○")) 偶数行とその1つ下の行の両方に○の入っている数 =SUMPRODUCT(MOD(ROW(C2:C20),2)*(C2:C20="○")*(C3:C21="○")) 名前の入っているセルの行に○の入っている数 =SUMPRODUCT((B2:B21<>"")*(C2:C21="○")) 名前の入っていないセル(空白セル)の行に○の入っている数 =SUMPRODUCT((B2:B21="")*(C2:C21="○")) 名前の入っているセルの行とその1つ下の行の両方に○の入っている数 =SUMPRODUCT((B2:B20<>"")*(C2:C20="○")*(C3:C21="○"))
お礼
あっ!そうか、教えてくださった数式を加算減算すればよかったのですね! 察しが悪くて自分が嫌になります・・・泣。 助かりました、回答くださりどうもありがとうございました!
- 某HN クロメート(Chromate)(@CoalTar)
- ベストアンサー率40% (705/1742)
奇数行に○の入っている数 =SUMPRODUCT(MOD(ROW(C2:C21),2)*(C2:C21="○")) 偶数行に○の入っている数 =SUMPRODUCT((MOD(ROW(C2:C21),2)=0)*(C2:C21="○")) 名前の入っているセルの行に○の入っている数 =SUMPRODUCT((B2:B21<>"")*(C2:C21="○")) 名前の入っていないセル(空白セル)の行に○の入っている数 =SUMPRODUCT((B2:B21="")*(C2:C21="○"))
補足
早速回答を頂き、ありがとうございます。配列で行ごとに算出する方法ですね。 配列で何とか1つのセルで算出できないものか私も考えてみまして、下記のように作ってみたのですが、これだと答え「7」になってしまうため、断念しました。 =SUM(SUMPRODUCT((B2:B21<>"")*(C2:C21="○")),SUMPRODUCT((B2:B21<>"")*(C3:C22="○"))) 1つのセルで「6」が算出できる方法がもし分かりましたらまたよろしくお願いいたします。
- aokii
- ベストアンサー率23% (5210/22062)
=IF(OR(C2="○",C3="○"),1,0)+IF(OR(C4="○",C5="○"),1,0)+IF(OR(C6="○",C7="○"),1,0)+IF(OR(C8="○",C9="○"),1,0)+IF(OR(C10="○",C11="○"),1,0)+IF(OR(C12="○",C13="○"),1,0)+IF(OR(C14="○",C15="○"),1,0)+IF(OR(C16="○",C17="○"),1,0)+IF(OR(C18="○",C19="○"),1,0)+IF(OR(C20="○",C21="○"),1,0)
お礼
あっすみません! ネストレベルは関係なかったですね・・・1000行分のIF式を作るのが大変なので・・・と書かなくてはいけませんでした。 補足に追加入力する方法が分からなかったので、お礼の方に入力させて頂きました。申し訳ありません!
補足
早速回答を頂き、ありがとうございます。 私の文章に足りない部分がありました、申し訳ありません! 添付図のように20行ほどであればいいのですが、データは1000行(名前は500名)ほどあり、IF関数のネストできるレベルを超えてしまいます。 1000行でもカウントできる方法はありますでしょうか・・・。
お礼
早々に回答をありがとうございました。 1つのセルで算出出来ました! 助かりました、どうもありがとうございました!!