- ベストアンサー
エクセル2003で縦と横の交わる部分に合計を出す方法
- エクセル2003を使用して、縦の日付と横のコードが交わる部分に合計を出せる表を作成したいです。
- Dsum関数を使用する方法を検索しましたが、式を組む方法がわからず困っています。
- ピポットテーブルではなく、数式を使用した方法で解決したいです。ご教授ください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
お示しのようにデータを入力していきますとデータの数は多くなります。SUMPRODUCT関数などではデータの数が多くなれば計算に負担がかかります。簡単な関数を使って対応することです。そのためには作業列を使って対応することでしょう。 シート1にお示しのデータが有るとしてE2セルには次の式を入力して下方にドラッグコピーします。 =IF(B2="","",B2&"/"&C2) お求めの表はシート2に表示させるとしたらA2セルから下方には日付が入力されているとして、また、B1セルから右横にはコードが入力されているとしてB2セルには次の式を入力して右横方向にドラッグコピーしたのちに下方にもドラッグコピーします。 =IF(COUNTIF(Sheet1!$E:$E,$A2&"/"&B$1)=0,"",SUMIF(Sheet1!$E:$E,$A2&"/"&B$1,Sheet1!$D:$D))
その他の回答 (2)
- keithin
- ベストアンサー率66% (5278/7941)
Excel2007以降ならSUMIFS関数を利用して簡単に計算できますが,Excel2003以前では G2: =SUMPRODUCT(($B$2:$B$100=$F2)*($C$2:$C$100=G$1),$D$2:$D$100) 右に下にコピー 更に ツールメニューのオプションの表示タブでゼロ値のチェックを外す または セルの書式設定の表示形式のユーザー定義で #,### などのように設定しておく などで不要なゼロの表示を消す といった仕込みをします。
お礼
ありがとうございます。 こちらの方法は、とても簡単に表を作ることが出来ました。 最終的に、別の方の方法になりましたので、お礼だけで 申し訳ありませんが、ありがとうございました。
- FEX2053
- ベストアンサー率37% (7991/21371)
それって「ピボットテーブル」の機能ですよね。 http://allabout.co.jp/gm/gc/297727/ 一度使ってみてください、ゴチャゴチャ関数をいじるより ずっと簡単に求める表が一発で出来ますよ。
お礼
すいません! 補足にお礼のメッセージを入れてしまいました。 改めて、ありがとうございました
補足
一番はやくお返事ありがとうございました。 やはり、ピボットテーブルが簡単に出来、速いみたいですね。 ご回答ありがとうございました。
お礼
KURUMITOさんの方法を現在使用させていただいております。 これで、業務がだいぶ楽になりました。 またひとつ数式の勉強になりました。 ご回答ありがとうございました。