• ベストアンサー

Excel・収支の合計を項目別に出す

初歩的な質問かもしれないのですが… エクセルで簡単な家計簿をつけています。 もっと使い勝手よくしたいのですが良く分からず、質問させてもらいます。 A 日付 B 項目 C 内容 D 支出 E 収入 とします。 日付順につけていく予定ですが、上の方に項目別に現在の合計金額を固定にて表示したいと考えてます。 これまで支出や収入などの一つの項目別の集計にはsumifを使用していました。 自動的に収入と支出を計算して合計を表示するには、どんな関数を使ったらよいのでしょうか?

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

  • ベストアンサー
  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

■SUMIFで収入-支出を行う方法 =SUMIF(B20:B100,"項目",E20:E100)-SUMIF(B20:B100,"項目",D20:D100) ■SUMPRODUCT関数を利用する方法 =SUMPRODUCT((B20:B100="項目")*(E20:E100-D20:D100))

その他の回答 (2)

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.3

>上の方に項目別に という部分の意味が良く理解出来なかったのですが、右の方では駄目なのでしょうか。  今仮に、1行目には、日付、項目、内容、支出、収入といった、記入欄の名称が並んでいて、元データーが2行目~99行目の範囲に入力されているものとします。  そしてF列を作業用の列として使用して、H列には項目を自動的に重複無しに並べて表示し、各項目毎の支出の合計をI列に、収入の合計をJ列に表示するものとします。  まず、F2セルに次の様な数式を入力して下さい。 =IF(OR($B2="",COUNTIF($B$2:$B2,$B2)>1),"",COUNT(F$1:F1)+1)  次にF2セルをコピーして、F3~F99に貼り付けて下さい。  続いて、H2セルに、 =IF(ROWS(H$2:H2)>COUNT($F$2:$F$99),"",INDEX($B$2:$B$99,MATCH(ROWS(H$2:H2),$F$2:$F$99))) I2セルに、 =IF($H2="","",SUMIF($B$2:$B$99,$H2,$D$2:$D$99)) J2セルに、 =IF($H2="","",SUMIF($B$2:$B$99,$H2,$E$2:$E$99)) という数式を入力して下さい。  最後にH2~J2の範囲をまとめて選択して、Excelのオートフィル機能で、必要な行数だけコピーして下さい。  尚、H列~J列のリストは、範囲選択した後、切り取り&貼り付け(又はコピー&ペースト)機能を使用して、別の場所に移動した場合でも、正常に動作しますので、元データーのリストの上に移動させる事も出来ます。

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

こんばんは! 参考になるかどうか判りませんが・・・ 勝手に↓のような表を作ってみました。 H2セルに =IF(G2="","",SUMIF($B$2:$B$100,G2,$D$2:$D$100)) という数式を入れオートフィルで下へコピーしています。 I2セルは単純に =SUM(E2:E100) J2セルは =I2-SUM(H2:H20) としています。 尚、数式は元データが100行目まで対応できるようにしていますが データ量によって範囲指定の領域はアレンジしてみてください。 以上、参考になれば良いのですが 的外れなら読み流してくださいね。m(__)m

関連するQ&A

専門家に質問してみよう