Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


8547 / 13644 ツリー ←次へ | 前へ→

【32606】配列数式(カウント)について an 05/12/19(月) 14:30 質問[未読]
【32608】Re:配列数式(カウント)について Jaka 05/12/19(月) 14:53 回答[未読]
【32610】Re:配列数式(カウント)について an 05/12/19(月) 15:44 質問[未読]
【32613】Re:配列数式(カウント)について Jaka 05/12/19(月) 16:45 発言[未読]
【32615】Re:配列数式(カウント)について Jaka 05/12/19(月) 17:12 回答[未読]
【32620】Re:配列数式(カウント)について ichinose 05/12/19(月) 19:49 発言[未読]
【32645】Re:配列数式(カウント)について Jaka 05/12/20(火) 13:06 発言[未読]

【32606】配列数式(カウント)について
質問  an  - 05/12/19(月) 14:30 -

引用なし
パスワード
   こんにちは。
VBAではありませんが、教えていただけると
大変助かります。

SHEET(1)に以下のようなデータがあって
SHEET(2)にその集計を出したいと思っています。
集計方法は、B列の値が1でC列の値が0の
人は何人といったような方法です。
下の例で言うと答えは4と出るように
関数を入れたいのです。

計算列を作成せずに関数で出すことは
可能でしょうか?


  A   B  C  
1 名前  1  0
2 名前  0  0
3 名前  1  1
4 名前  1  0
5 名前  1  1
6 名前  0  0
7 名前  1  0
8 名前  1  0
9 名前  1  1

【32608】Re:配列数式(カウント)について
回答  Jaka  - 05/12/19(月) 14:53 -

引用なし
パスワード
   こんにちは。

=SUMPRODUCT((Sheet1!B1:B9=1)*(Sheet1!C1:C9=0))

【32610】Re:配列数式(カウント)について
質問  an  - 05/12/19(月) 15:44 -

引用なし
パスワード
   ▼Jaka さん:
早速の回答有難うございました。
申し訳有りません、結果が正確に出ないようなのです。

例えば、B列に1,0以外に空白が入っている場合、
0と指定すると空白までカウントされてしまいます。

A列が1かつB列が0といういわゆる条件がANDとなる
場合の数をカウントしたいのですが、、

私のデータの入れ方がまずいのでしょうか??


=SUMPRODUCT((sheet1!$B$3:$B$100=0)*(sheet1!$C$3:$C$100=1))

【32613】Re:配列数式(カウント)について
発言  Jaka  - 05/12/19(月) 16:45 -

引用なし
パスワード
   ▼an さん:
>例えば、B列に1,0以外に空白が入っている場合、
>0と指定すると空白までカウントされてしまいます。
SUMPRODUCTって、空白も0として計算しちゃうんですね!
すみません。
今の所、別な方法が思いつきませんが、一応考えてみます。

【32615】Re:配列数式(カウント)について
回答  Jaka  - 05/12/19(月) 17:12 -

引用なし
パスワード
   一応。
=SUMPRODUCT((B1:B9=1)*(MID(C1:C9,1,2)="0"))


=SUMPRODUCT((B1:B9=1)*(MID(C1:C9,1,1)="0"))
でも良いけど、何となく2桁にしてみました。

【32620】Re:配列数式(カウント)について
発言  ichinose  - 05/12/19(月) 19:49 -

引用なし
パスワード
   ▼Jaka さん、こんばんは。
>一応。
>=SUMPRODUCT((B1:B9=1)*(MID(C1:C9,1,2)="0"))
>
>
>=SUMPRODUCT((B1:B9=1)*(MID(C1:C9,1,1)="0"))
>でも良いけど、何となく2桁にしてみました。

Jakaさん数式からヒントを得て(数値を文字列に変換して比較)

=SUMPRODUCT((B1:B9=1)*(C1:C9&""="0"))

これでもOKでした。

他には、

=SUMPRODUCT((B1:B9=1)*(C1:C9=0)*(C1:C9<>""))

とAND条件をもう一つ追加する方法もありました。

【32645】Re:配列数式(カウント)について
発言  Jaka  - 05/12/20(火) 13:06 -

引用なし
パスワード
   う〜ん。
ichinoseさんの方が簡単で良かったですね!
数字を文字列にして比較しなくて済むし...。

B列の空白分も含めると、こんな感ですね。
(B列C列ともに0の個数)
=SUMPRODUCT((Sheet1!B1:B9=0)*(Sheet1!B1:B9<>"")*(Sheet1!C1:C9=0)*(Sheet1!C1:C9<>""))

で、結果はどうなったんでしょうかね?

8547 / 13644 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free