- ベストアンサー
Excel2007 複数条件の行数カウントできないでしょうが??
下のような条件の表の中で1の列が、1で始まり2の列がAから始まり、しかも3の列が10以上のような行数をカウントする事は、出来ないでしょうか? 出来れば、これを自動計算で各条件ごとに別シートにカウント表示したいのですが・・・ 1 2 3 A 30 AB 5 B 12 AA 5 C 12 BC 10 D 25 BB 15 E 25 AC 10 F ・ ・ ・ G ・ ・ ・ H ・ ・ ・ Excel初心者なので詳しく説明いただければ助かります。m(__)m
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
以下のURLを参考にしてみてください。 http://www.eurus.dti.ne.jp/~yoneyama/Excel/kansu/count.htm SUMPRODUCT関数を使えばいいかと思います。 なお、文字列がAから始まるということを条件式で表せば、"=A*" となります。この場合の「 * 」はワイルドカードと呼ばれ、何かしらの文字列を意味します。つまり、"=A*" ならば先頭がAで始まる文字列を意味します。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
問題例が初心者丸出しですよ。 ABC・・は列の番号として、行の番号は1,2,3・・とします。 質問は逆です。 -- (1)2007まで SUMPRODUCT (2)2007では(1)のほかに 3条件のCOUNTは、一般論としては、COUNTIFS関数が新設されそれが使えます。 http://www.eurus.dti.ne.jp/~yoneyama/Excel/waza/count01.html ほか、COUNTIFS関数で照会すれば多数出ます。 しかし本題の例では使えないでしょう。 条件は3つで A1:A100 Mid(A1:A100,1,1)="1" B1:B100 Mid(B1:B100,1,1)="B" C1:C100 " >10" なのですが、条件に関数がかけないようです。 範囲にもMid(A1:A100,1,1)のような関数は書けないようです。 ーー ただし別2列にMid(A1:A100,1,1やMid(B1:B100,1,1)を出しておけば COUNTIFSが使えるでしょう。 ーー 従って (1)SUMPRODUCT関数 (2)配列数式(少し高等なので記述省略) を使うほか無いようです。 ーーー 例データ A1:C6 30 AB 5 12 AA 5 12 BC 10 25 BB 15 25 AC 10 13 AD 23 E1:F5(手入力) G列結果該当件数 1 A 1 1 B 0 2 A 0 2 B 1 3 A 0 G1は =SUMPRODUCT((MID($A$1:$A$100,1,1)=E1)*(MID($B$1:$B$100,1,1)=F1)*($C$1:$C$100>10)*1) と入れて下方向に式を複写。 結果 上記G列
お礼
ご回答ありがとうございます。 たしかに・・・・ 初心者丸出しでお恥ずかしい限りです。(ρ_;) まだまだ、理解するには、ほど遠いようですが、少しずつ覚えていきたいと思います。><; ありがとうございました。
- 134
- ベストアンサー率27% (162/600)
一般的には、ABC…が列で 1,2,3…が行になりますかね。 ^^;) =sumproduct((left($a$1:$a$1000)="1")*(left($b$1:$b$1000)="A")*($c$1:$c$1000>=10)) または、 =SUM(IF(((LEFT($A$1:$A$1000)="1")*(LEFT($B$1:$B$1000)="A")*($C$1:$C$1000>=10)),1,"")) と入力して、Shift+Ctrlの状態で、Enterを押す というのではいかがでしょうか。 left(a,b)は、aの左からb文字分を取り出せ、という関数です。 2番目の関数は、配列数式といわれるものです。
お礼
早速のご回答ありがとうございます。 さっそく、試してみました。 sumproductを使かうことで、うまくいきました。 ご回答を参考に、いろいろと条件を加えて試してみます。 大変参考になりました。 ありがとうございました。 ヘルプを見ながら、いろいろ試したつもりなのですがエラーが、出るばかりで脳みそが火を噴くかと思いました。 (T▽T)ノ
お礼
ご回答ありがとうございます。 sumproduct関数の中でもワイルドカード使えますか?? 使い方が悪いのか、エラーが出てうまく使えませんでした。 教えていただいたHPを参考にいろいろ試してみます。 ヘルプ読めば読むほど迷宮に迷い込んで行くようだったので・・・・ ありがとうございました。