アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excelで家計簿を作りたいと考えています。

画像は簡略化したものですが、
A:Cに日付、適用、金額を入力した後、

右側の表に、
月ごと、適用ごとの金額をまとめたいです。

SUMIF関数を使って、
適用の合計額(三か月合計)を出すことはできたのですが、
月ごとに分類して合計する方法が分かりません。

関数、VBAのどちらでもかまいませんので、
解決法を教えてください。

よろしくお願いします。

「Excelで家計簿を作る方法」の質問画像

A 回答 (6件)

> 日付を「○月○日」表示ではなく、「20130101」等で表記し、


> 文字列として計算することは可能でしょうか?

文字列でしたら

D2に
=MID(A2,5,2)

F7から始まる7行目の
6月などを06月などのように頭に0を付加して

F8に
=SUMPRODUCT(($D$2:$D$100=LEFT(F$7,2))*($B$2:$B$100=$E8)*($C$2:$C$100))

にしてあとは必要ところにコピーしてください。

先の回答でF9と書いたのは行を見違えてましたのでF8が正当でした。
    • good
    • 0
この回答へのお礼

何度もご回答ありがとうございます。
文字列でのやり方も教えていただけたので、
色々なものを集計することが出来そうです。
とても助かりました!

お礼日時:2013/08/06 19:35

最も分かり易くパソコンにも負担にならない方法は作業列を作って対応する方法です。


例えばD2セルには次の式を入力して下方にドラッグコピーします。

=IF(A2="","",MONTH(A2)&"月"&B2)

作業列が目障りでしたらD列を選択してから右クリックして「非表示」を選択します。

F8セルには次の式を入力して右横方向にドラッグコピーしたのちに下方向にもドラッグコピーします。

=IF($E8="","",IF(COLUMN(A1)<=3,SUMIF($D:$D,F$7&$E8,$C:$C),IF(COLUMN(A1)=4,SUM($F8:$H8),"")))
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
シンプルに作ることばかり意識していて、
作業列作成+非表示にすることは思いつきませんでした。
面倒くさがらすにきちんと手順を踏んで作成してみます。

お礼日時:2013/08/06 08:10

こんばんは!


画像の配置だと・・・

F8セルに
=SUMPRODUCT((MONTH($A$2:$A$1000)=COLUMN(F1))*($B$2:$B$1000=$E8),$C$2:$C$1000)
という数式を入れ列・行方向にオートフィルでコピーしてみてください。

I8セルは単に
=SUM(F8:H8)
としてオートフィルで下へコピー!

これで何とかご希望通りにならないでしょうか?m(_ _)m
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。
大変助かりました!

お礼日時:2013/08/06 19:33

D2に


=MONTH(A2)
として下方向に必要な分だけコピーしてください。

F9に
=SUMPRODUCT(($D$2:$D$100=COLUMN(F1))*($B$2:$B$100=$E9)*($C$2:$C$100))
として
必要なセルのところにコピーしてください。

この回答への補足

ご回答ありがとうございます。
せっかくご回答いただいたのですが、
勉強不足で日付の絡んだ関数があまり得意ではないので、
いまいちピンときませんでした、、、。
日付を「○月○日」表示ではなく、「20130101」等で表記し、
文字列として計算することは可能でしょうか?

補足日時:2013/08/06 08:03
    • good
    • 0
この回答へのお礼

ご回答ありがとうございました。

お礼日時:2013/08/06 19:23

こんなのはダメ?


一番上固定 
列クリックで合計月末日ごとに0になるように合計値ーを入れる
「Excelで家計簿を作る方法」の回答画像2
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
項目数は多くしたいのですが表はコンパクトにしたいので、
出来れば計算式で検索するような形を取りたいと思っています。
いまイメージしている方法が難しそうであれば、こちらの方法を使ってみます!

お礼日時:2013/08/06 07:52

Excel2007以降を使いSUMIFS関数を使って計算するのが一番上策ですが、いまご利用のエクセルでは




前提:
年をまたいで(2012年と2013年のみたいな)日付を記入していない事


準備:
無駄な計算をしないように、F7にはただ「6」と記入、セルの書式設定の表示形式のユーザー定義で
0月
と設定しておく。7月8月セルも同じ

手順:
F8には
=SUMPRODUCT((MONTH($A$2:$A$999)=F$7)*($B$2:$B$999=$E8), $C$2:$C$999)
と記入、右にコピー、下にコピー。


#解答した数式程度なら特に負担が発生する事はありませんが、無駄に馬鹿みたいにデカいセル範囲を計算させようとしてはいけません。
    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
SUMPRODUCT関数を利用して、イメージ通りに作成することが出来ました。

お礼日時:2013/08/06 19:23

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!