• ベストアンサー

エクセル2003でcountifsと同等の効果

エクセルを使用して、スキャニングしたデータの用紙サイズの集計を したいと思っています。 添付画像の様に、左側にサイズ一覧の表を作り、右側に作った表で 集計結果を表示したいと思っています。 画像ではCOUNTIFSを使用し、A列とE3が合致した範囲のC列からF2を カウントする条件としてF3に、その数を表示させるという方法をとっていますが 実際に作業を行うPCにはエクセル2003しか入っていません。 これと同様の効果を2003で行うことは可能でしょうか? よろしくお願いします。

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

  • ベストアンサー
  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! Excel2003までですと、SUMPRODUCT関数で対応できます。 画像の配置通りだとするとF3セルに =SUMPRODUCT(($A$1:$A$1000=$E3)*($C$1:$C$1000=F$2)) という数式を入れ、列・行方向にフィルハンドルでコピーしてみてください。 ※ SUMPRODUCT関数は配列数式になりますので、極端にデータ量が多い場合はおススメしません。 とりあえず1000行目まで対応できる数式にしています。 3000行程度であれば大丈夫だと思いますが、 データ量がもっとある場合は作業用の列を設けるなりする方法が良いと思います。m(_ _)m

tanakaTTff
質問者

お礼

この欄では、今後、この頁を参考にする方の為に 補足に対する補足をしたいと思います。 この頁の補足項に書いてあることはこちらの入力ミスが原因でしたので 読み飛ばしてください。 tom04様へのお礼はNo.3で。 No.1とNO.3で回答を頂いていますが、入力方法とそれに対する説明である こちらをベストアンサーとさせて頂きたいと思います。

tanakaTTff
質問者

補足

回答ありがとうございます。 とりあえず手持ちの2007を使って教えていただいた関数を試してみたのですが F3とG3(01-0001のA4とA3の枚数欄)には数量が反映されるのですが、 F4、G4(02-0001のA4とA3)の数量が0になってしまいました。 入力ミスかと思い、回答からコピーして貼り付けてみたのですが、同じ結果に… F3には=SUMPRODUCT(($A$1:$A$1000=$E3)*($C$1:$C$1000=F$2)) F4には=SUMPRODUCT(($A$1:$A$1000=$E4)*($C$1:$C$1000=F$2)) と入力されているのですが…。

その他の回答 (2)

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

No.1です。 >F3には=SUMPRODUCT(($A$1:$A$1000=$E3)*($C$1:$C$1000=F$2)) >F4には=SUMPRODUCT(($A$1:$A$1000=$E4)*($C$1:$C$1000=F$2)) その数式で間違いないはずです。 Excel2007以降が手元にあれば、試しにどこのセルでも良いので =COUNTIFS($A:$A,$E3,$C:$C,F$2) という数式を入れ、列・行方向に2セルずつコピーしてみてください。 同じ結果が表示されるはずです。 こちらでも「0」が返ってきますか? もしそうであれば原因として、 E4データがA列と一致していない(実際にA列にE4セルデータが存在しない) というコトが考えられます。m(_ _)m

tanakaTTff
質問者

お礼

再度の回答ありがとうございます。 ご指摘をもとに、もう一度確かめてみましたところ、集計側の表で 入力ミスをしていました(汗) 参考画像を作る用に作成した物を保存し忘れていて、改めて同じ物を作った つもりが間違えて作成していました。 わざわざお手を煩わせてしまい、申し訳ありません。 表を修正した結果、正常に動作しました。 今回はありがとうございました。

  • shintaro-2
  • ベストアンサー率36% (2266/6244)
回答No.2

dcounta では駄目なの? http://pc.nikkeibp.co.jp/pc21/tech/excel36/08/ office2003のサポートも終了していますので、 エクセル2003の入ったPCをネットワークに接続したり、そのPCと他のPCとでUSBメモリ等を介してデータのやり取りをするのは、やめてください。

tanakaTTff
質問者

お礼

回答ありがとうございます。 ここで質問する前にも、自分で幾つか調べて試してみたのですが dcountaは上手く使えなかったので… (関数の類は詳しい方ではないので、入力ミスの可能性大ですが) 参考先を見てもう一度試してみたのですが、やはり上手くいきませんでした。 2003に関しては最もだと思うのですが、自分のPCではないもので… 新しい物を優先して使うよう心がけます。

関連するQ&A

  • Excel2003におけるCountIFS関数

    Excel2003におけるCountIFS関数 Excel2007にはCountIFS関数というのがあり、一覧表から複数の条件を満たしたデータ(行)の件数をカウントできると思います。 この関数のExcel2003版は無いのでしょうか? クロス集計表を作成したいのですが、ピボットテーブルだと、件数がゼロ件の見出しは表示されないので、自分で手作りしたいと思っています。 教えて下さい。宜しくお願い致します。

  • エクセル countifs関数の記述法を教えて

    画像の一覧表から、A列に"○"が付いた行だけについて、75歳~79歳の男性の人数をカウントしたいのですが。 "○"を付けるする前の一覧表については、先の質問(No.8135362)で回答をいただき解決しました。    =COUNTIFS(C2:I6,">=70",C2:I6,"<80",D2:J6,"男") で5人となります。 このたび、A列に"○"を付けた行だけについてカウントする必要になり、次の式を立てましたが、#VALUEがでてしまい、どうにもなりません。    =COUNTIFS(A2:A6,"○",C2:I6,">=70",C2:I6,"<80",D2:J6,"男") countifs関数に、subtotal関数のような機能があればよいのですが、わかりません。 思いつくのは、フィルターをかけた後、その一覧表を、別シートにコピーペーストしてから、最初の式でカウントする方法しか思いあたらないのですが。 実際の表はもっとずっと大きいので、ひとつの関数式でできないものかと思っています。 よろしくお願いします。

  • Excel COUNTIFSでカウントできません

    Excel2007を使用しています。 複数の検索条件から、データの数をカウントしたかった為、COUNTIFSを使用してカウントしようとしたところ、エラーが返ってきてしまいました。 実際のではありませんが、下記のように記入しました。 =COUNTIFS(A:C,1,D:D,2) SUMPRODUCT((A:C=1)*(D:D=2)) なら、一応やりたいことは出来たのですが、動作が重くなってしまいました。 (面倒がらず列選択せず、きちんと範囲指定すれば別なのかもしれませんが) 何かスマートなやり方があれば、ご教授頂ければと思います。

  • エクセル countifs関数について

    エクセル countifs関数について 上記を使い、相談受けた内容や人の情報を日付ごとにまとめているデータを集計するやり方です。 その中にあるデータ 男 の数を月ごとにまとめたいのですが、 データは、同じ日なら、同じ列に追記していく形になっているので、 countif(c2:d34,〝男〝)として、 複数範囲 を選択し、男のデータを集計しておりました。 ただ、月ごとに自動で選択されるように h列に month関数で月の値を求めてから、 i列にi2から月の数字として、4~3 の値 入力。 式をcountifs(c:g,〝男〝,h :h,i2) としたところ、エラーとなり、データを求めることができませんでした。 範囲を、複数範囲と列 で設定しているのが、よくないと思うのですが、うまくやる方法ないですかね。 列 と列で揃えるしかないですかねぇ。 もし、よい方法があれば、ご教示ください。 ※データを言葉だけで表現しているので、大変わかりにくくて申し訳ありません。 countifsの考え方を知りたいというのが目的なので、実際の式、データよりは、かなり簡潔にして記載しております。

  • エクセルの複合計算

    いつもお世話になっております。 今回質問させていただきたいのはExcel2003の関数についてなのですが、Excel2007では追加されているCOUNTIFSの集計機能です。 例として -|A|B| 1|a|1| 2|a|2| 3|a|1| 4|b|2| 5|b|1| という表があったときに「A列にaがあり、かつB列に1がある行」をカウントしてほしいのです。 一度a-1やb-2など集計してからとも思ったのですが、論理式だけで何通りもの式が必要になってしまい無理がありました。 Excel2003でExcel2007のCOUNTIFSと同じ集計を行える方法をご教授願えないでしょうか? よろしくお願いいたします。

  • エクセル カウントの簡単な記述法を教えて

    画像の表の中の、特定の年齢層の性別毎の数をカウントしたい。 画像では、3つのブロックの"70~79歳"までの"男"の数を集計する場合を例示しております。 countifs関数を用いて、3つのブロックごとの足し算を行えば集計できるのですが、実際のブロック数は6個ほどあります。 そのため実際には、足し算の代わりに、1ブロックの関数式を右ドラッグして、合計する方法をとっていますが、一つの式にまとめる方法がありましたら、教えてください。 集計の計算式:   =COUNTIFS(B2:B6,">=70",B2:B6,"<80",C2:C6,"男")     +COUNTIFS(E2:E6,">=70",E2:E6,"<80",F2:F6,"男")       +COUNTIFS(H2:H6,">=70",H2:H6,"<80",I2:IF6,"男")         + ・・・・・・・     もっと簡単な式になりませんか? win7 64bits、Excel2010、 IE9です。 確認ボタンをクリックしても、添付画像のfaile名は表示されてはいるものの、実際の表示状態を見ることができないので、うまく表示されるのか心配ですが、送信します。

  • エクセルでフィルタ後の条件付き個数のカウント

    いつもお世話になっております。 エクセル(2007)で作成した表をフィルタ後に条件に合致する個数をカウントする方法を教えてください。 (例) A列:名前 B列:出身県のデータがあったとします。 名前でフィルタをかけた後、出身県ごとのカウントを行いたいのですが、条件が無い場合のデータ個数はSUBTOTAL関数を使えばOKなのはわかります。 COUNTIFS関数を使うと、フィルタで隠れた行のデータまでカウントしていまいます。 ピボットを使う(使い方がイマイチわかりませんが・・・)という方法もあると思いますが、今回は同一シート無いに関数でカウントしたいのです。 どなたかよろしくお願いいたします。

  • エクセル、COUNTIFS関数の範囲指定について

    エクセル2010です。 「A1の文字列が、B列とC列の中から合致し、さらにD列の"○○"という条件を満たすものはいくつあるか」 という数式を作りたいです。 写真でいうと、B・C列の中から中央区があるかどうか、さらにその中に山田がいるか、という検索式です。 そこで、COUNTIFS関数を使い、fxボタンで半自動で作ったところ、 =COUNTIFS(B:C,A1,D:D,"山田") となったのですが、なぜか結果はエラーになってしまっています。 どうやら検索条件の範囲が「B:C」になっているのが問題なのか、B:BやC:Cだけにすると、ひとつの列なら正常に計算するようです。 そこで式を二つに分け、プラスでつなげてみました。 =COUNTIFS(B:B,A1,D:D,"山田")+COUNTIFS(C:C,A1,D:D,"山田") こうしてみると一応成功しました。 しかし動作が重くなり、処理に数秒かかるようになってしまいました。 (B:Bなどひとつの列なら、数式を記入した瞬間に結果がでます) できれば数式は短くシンプルにしたいので、前述の短い形式のようにならないものか、と思います。 COUTIFS関数で、検索範囲を「○列~△列」のようにできないものでしょうか? アドバイスをよろしくお願いします。

  • COUNTIFS関数について

    EXCELのCOUNTIFS関数について質問させてください。 I列に部署名(7~8種類) BC列に残業時間(10:00や30:00など[h]:mm表記に設定) が入力されたデータが950件弱あります。 社内全体の残業時間を出すことは出来たのですが 部署別で尚且つ、40時間越え〇人・50時間越え〇人 というように区切って集計する事が出来ませんでした…。 使ってみた関数は下記の通りです。 =COUNTIFS(I3:I706,対象部署,BC3:BC706,">=40:00") 結果は何度やってもエラーか【0】になってしまいます。 どなたか力を貸してください。 具体的な関数とアドバイスを頂けると幸いです。 宜しくお願い致します。

  • エクセルの関数について こんなこと出来ますか?

    エクセルの表で、集計をしたいと思っています。 数字が入った2列と、それを集計するセルを2つ思い浮かべてください。 その数字が入った2列の右側に「1」か「2」の数字が入っていて(この場合はアンケートの答えの番号です)、左側には任意の数字(この場合は売上金額)が入っています。 集計するセルには、「1」または「2」をそれぞれ選んだ人の金額が合計ででいくらになるかをはじき出したいんですけど、こういうのって関数で出せるものなのでしょうか? (これが出来なければフィルターで出して計算しなければならないんですけど、後からどんどん追加がくるので、そのたびにやるのは面倒くさいんです・・・) お手数ですが、よろしくお願いいたします。

専門家に質問してみよう