[[20100420083749]] 『件数カウントについて』(松子) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『件数カウントについて』(松子)

 いつも参考にさせていただいております。
 今回も、行き詰ってしまい・・・教えていただけないでしょうか?

 下記のようなデータがあります。
 その中で条件を満たしたものの、件数をカウントしたいと思っています。
 カウントした列=【C列とD列の合計件数】です。アルファベットもあれば数字もあります。

 条件とは・・・
 @B列が【ゼロ以上】
 AC列の【C・S・O以外】
 B更に【C列がOの場合はD列の数字をプラス】したい
 というものです。
 下記のデータで言うならば、
 結果は=5件(KR+T+E+2)
 としたいのです。

 	【A】	【B】	【C】	【D】
【1】	りんご	みかん	ランク	
【2】	100		WKR	
【3】	112		WR	
【4】		150	KR	
【5】	105		S	
【6】		130	O	2
【7】		160	C	
【8】		90	T	
【9】	85		P	
【10】	120		WE	
【11】		98	E	

 このような条件で件数カウントは出来ますでしょうか?
 ご伝授下さい。

 (松子)


 作業列使った方が簡単だと思います。
 作業列がE2だとして、
 =AND(ISNUMBER(B2),B2>=0,C2<>"C",C2<>"S",C2<>"O")*1+(C2="O")*D2
 E2を下にフィル。
 E列をSUMで計算。

 SUMPRODUCTでも良いんですが、下にD列の条件分も追加しなければならないので止めました。
 =SUMPRODUCT((ISNUMBER(B2:B11))*(B2:B11>=0)*(C2:C11<>"C")*(C2:C11<>"S")*(C2:C11<>"O"))
 BJ

 横から失礼します。
 =SUMPRODUCT((ISNUMBER(B2:B11))*(B2:B11>=0)*(C2:C11<>"C")*(C2:C11<>"S")*(C2:C11<>"O"))
+SUMPRODUCT((B2:B11>=0)*(C2:C11="O"),D2:D11)
 上記を任意のセルに入力でどうでしょうか。
 ところで、回答を考えているときに、次ようなことに出会いました。
 どなたかお教え願えませんか。
 =SUMPRODUCT((ISNUMBER(B2:B11))*(B2:B11>=0)*(C2:C11<>"C")*(C2:C11<>"S")*(C2:C11<>"O"))
 のときは正確に5という値が得られましたが、
 =SUMPRODUCT((B2:B11>=0)*(C2:C11<>"C")*(C2:C11<>"S")*(C2:C11<>"O"))
 では、B列の未入力セルもカウントしてしまうみたいで、7という値がかえってきてしまうのです。
 どうしてでしょうか?
 (わかあゆ)


 >=SUMPRODUCT((B2:B11>=0)*(C2:C11<>"C")*(C2:C11<>"S")*(C2:C11<>"O"))
 >では、B列の未入力セルもカウントしてしまうみたいで、7という値がかえってきてしまうのです。

 何も入っていない空のセルは、0として扱われるから。
 何も入っていないセルがA1だとして、B1に
 = A1 = 0
 と、入れれば、Trueになります。
 BJ


 BJさん、ご教授ありがとうございました。
 空なのに"0"ですか。
 ISNUMBERでは、"0"と判断しませんね。このようなことがまだあるわけですね。
 (わかあゆ)

 こんにちは。
私も作業列を使うほうが分かりやすいと思いつつ、配列数式案です。

  ※「_」セルは未入力または""
  [R/C]     [A]     [B]     [C]  [D]     [E]
   [1]   りんご  みかん  ランク    _  件数↓
   [2]      100       _     WKR    _       5
   [3]      112       _     WR    _  除外↓
   [4]        _     150      KR    _       S
   [5]      105       _       S    _       C
   [6]        _     130       O    2       _
   [7]        _     160       C    _       _
   [8]        _      90       T    _       _
   [9]       85       _       P    _       _
  [10]      120       _      WE    _       _
  [11]        _      98       E    _       _

  E2 {=SUM(ISNUMBER(B2:B11)*IF(COUNTIF(E4:E5,C2:C11),0,IF(C2:C11="O",D2:D11,1)))}
   ↑Ctrl+Shit+Enterで確定(配列数式)
(コタ)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.