こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

教えて下さい!!!エクセル2003の関数COUNTIFと他の関数の組み入れについて

膨大な表から、色んな条件に合ったデータの個数を別表に集計する作業で困っています!
データの個数自体はピボットでやれば出るのですが、そのデータを別表に手入力しているので
そのやり方では、大変な時間がかかりとても困っています。

詳しくは、例えばこのような大きな表があるとします。
会社名性別勤務合否
A男勤務3OK
A男勤務3OK
A男勤務3OK
A男勤務3OK
A男勤務3OK
A女勤務1OK
C女勤務1OK
C女勤務1OK
D女勤務1OK
D女勤務1OK
D女勤務2OK
D女勤務2OK
A男勤務3NG
A男勤務3NG
A男勤務3NG
A男勤務3NG
A男勤務3NG
B男勤務3NG
D男勤務3NG
A女勤務1NG
A女勤務1NG
A女勤務1NG
B女勤務1NG
D女勤務2NG

それを、
 Aの数、Aの女の数、Aの女の勤務1の数、Aの女の合否の数というように別表に違う形式で集計したいのです。(B,C,D同様)
完成の表に直接関数を用いて、毎回一発でデータを集計したいのです。
COUNTIFで大きくくくって、他の関数と組み合わせる?のだと思いますが、
いまいちうまくいかないので、どなたか良い方法があれば教えて欲しいです。
ピボット以外でご回答いただきたいです。

どなたかよろしくお願い致します。

投稿日時 - 2007-11-09 22:31:43

QNo.3504231

すぐに回答ほしいです

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

セルA1からD24までデータが入っているとします。
Aの数
=COUNTIF(A1:A24,"A")
Aの女の数
=SUMPRODUCT((A1:A24="A")*(B1:B24="女"))
Aの女の勤務1の数
=SUMPRODUCT((A1:A24="A")*(B1:B24="女")*(C1:C24="勤務1"))
Aの女の合否の数(OKの場合)
=SUMPRODUCT((A1:A24="A")*(B1:B24="女")*(C1:C24="勤務1")*(D1:D24="OK"))
でいかがでしょうか?

投稿日時 - 2007-11-10 10:25:41

補足

こんにちは。
早々のご回答ありがとうございます。
やってみましたら出来ました!!
が、これは範囲指定をしなければ出来ませんでした。
補足ですが、毎月膨大な量のデータは、数(行)が固定されていませんので、
出来れば行全体で計算式に組み入れたいのですが、、、。
またVLOOKとの併用で可能でありましたら教えていただきたいです。
(他人に教えるのにそちらの方がわかりやすいので)
また、SUMPRODUCTを使用した場合、配列2.3はどのような事をするときに使えるのでしょうか??

もしおわかりでしたら、edomin2004様のお時間あるときに回答いただけたら嬉しいです。

どうぞ宜しくお願いいたします。

投稿日時 - 2007-11-10 11:32:18

お礼

すいません。。
出来れば行全体ではなく、列全体の間違いでした。
宜しくお願いいたします。

投稿日時 - 2007-11-10 11:34:52

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(2)

ANo.2

#1です。
少し長くなりますが、
=SUMPRODUCT((A1:INDIRECT("A"&COUNTA(A:A))="A")*(B1:INDIRECT("B"&COUNTA(B:B))="女")*(C1:INDIRECT("C"&COUNTA(C:C))="勤務1")*(D1:INDIRECT("D"&COUNTA(D:D))="OK"))
で、計算できませんか?

投稿日時 - 2007-11-10 13:42:57

お礼

こんにちは。
早々のご回答をいただいたのにお礼が遅れて申し訳ありません。
NO.2で教えて頂いた方法でやってみましたが、
長くて自分でも分からなくなってしまったので(σ(^_^;)・・)
行数を3000に指定してNO.1の方法で集計しました。

この度は何度も足を運んでいただきましてありがとうございました。
お陰様で便利になり、他にも活用出来そうです!
ありがとうございました☆

投稿日時 - 2007-12-01 13:13:07

あなたにオススメの質問