プロが教えるわが家の防犯対策術!

初めまして。エクセルの数式について教えてください。
下記のような式の場合に金額が0円以上の方が何人いるかを求めたいのですが、
数式で可能でしょうか。
たとえば番号1111の方は、0以上が2つありますが、データ的には1となるようにしたいのです。
COUNTIFとVLOOKUPなどでなんとかならないかと試行錯誤してみたのですが、うまく数えることができません。
お手数ですが、教えていただけると幸いです。どうぞよろしくお願いします。

「エクセル データの数を条件付きで数えたい」の質問画像

質問者からの補足コメント

  • すいません。補足です。
    1以上の方が何人いるかの数字を求めたいのです。
    画像の場合、答えが9人になるような式が欲しく、例が分かりずらいのですが、実際のデータには金額が0の方も居ます。

      補足日時:2015/10/21 20:12
  • 何度も補足で申し訳ございません。
    実データには700件以上のデータがあるため、A列の番号リストを手動で作成することが非常に困難です…。
    ただ、行を足すことや並び替えは可能です。
    リストを作成する必要がある場合、そのリストを数式で求めることは可能でしょうか。
    説明が下手で本当に申し訳ありません。

      補足日時:2015/10/21 20:28

A 回答 (3件)

こんばんは!



>たとえば番号1111の方は、0以上が2つありますが、データ的には1となるようにしたいのです。
(※ 厳密には「0より大きい数値」ですね。「以上」となれば「0」も含まれてしまいますので・・・)
というコトですので、「TRUE」か「FALSE」の判断だけで良いと思います。
一例です。

↓の画像ではF2セルに
=IF(COUNTIFS(A:A,E2,C:C,">0"),1,0)
という数式を入れています。m(_ _)m
「エクセル データの数を条件付きで数えたい」の回答画像1
    • good
    • 1

A列の番号のリストを作ります。

図の例ではE列に作りました。

F2セルに次のように入力します。
=IF(SUMPRODUCT(($A$2:$A$15=E2)*1,($C$2:$C$15>0)*1)>0,1,0)

IF関数で
SUMPRODUCT(($A$2:$A$15=E2)*1,($C$2:$C$15>0)*1)の結果が
0より大きかったら1を返します。

3333のデータのように、0より大きい値が2個あっても結果は1になります。

F2セルをコピーして、F3:F11に貼り付けます。

$A$2:$A$15
$C$2:$C$15
開始行と最終行は同じ値にします。この例だと開始行2、最終行15です。
絶対参照になっているので、コピペでも参照は変わりません。

E2
相対参照になっているので、F3~F10に貼り付けた式はE3~E10に変わります。


A:A
C:C
のように列全体を範囲にするとエラーになります。

2222 5555 8888のデータには0しかありませんので、計算結果は0になんります。

F2:F10を合計すれば、条件を満たすデータをカウントできます。
「エクセル データの数を条件付きで数えたい」の回答画像2
    • good
    • 1

No.1です。



>画像の場合、答えが9人になるような式が欲しく・・・
というコトですので、一例です。

↓の画像のように作業用の列を設けるのが簡単だと思います。
画像ではD2セルに
=IF(C2>0,IF(COUNTIFS(A$2:A2,A2,C$2:C2,">0")=1,1,""),"")
という数式を入れ、フィルハンドルでダブルクリック!
今後データが増える可能性がある場合は
これ以上データはない!という位まで下へコピーしておきます。

結果のF2セルには
=SUM(D:D)
という数式を入れています。

※ 作業列が目障りであれば非表示にしてください。

こんな感じではどうでしょうか?m(_ _)m
「エクセル データの数を条件付きで数えたい」の回答画像3
    • good
    • 1
この回答へのお礼

助かりました

式をみてなるほど!と思いました。
自分ではたどりつけなかった数式をこんなに早く、またわかりやすく答えていただき本当に感謝です!
これでデータの集計が本当に楽になりました。
ありがとうございました!

お礼日時:2015/10/21 21:40

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!