
家計簿をEXCELにて作成しているのですが、1年の月末時点での残金が知りたく、色々な関数を試しましたがどうもうまく抽出できません。
下の様に1つの口座の入出金を記録しているのですが、ここから、
◆1月 \1,077,256
◆2月 \856,059
・ ・
・ ・
と12月までの各月末のデータを抽出しようとした場合、どの様にすればよろしいのでしょうか?
どなたかご存じの方、教えて下さい。
A B C
2009/1/5 項目名 \897,389
2009/1/10 項目名 \887,389
2009/1/23 項目名 \1,145,746
2009/1/26 項目名 \1,077,256
2009/2/2 項目名 \957,652
2009/2/12 項目名 \887,389
2009/2/25 項目名 \833,652
2009/2/27 項目名 \856,059
2009/3/12 項目名 \651,079
・ ・ ・
・ ・ ・
・ ・ ・
No.5ベストアンサー
- 回答日時:
No.1です。
次の式をどうぞ。1月:=VLOOKUP(DATE(2009,1,31),A:D,4,TRUE)
2月:=VLOOKUP(DATE(2009,2,28),A:D,4,TRUE)
3月:=VLOOKUP(DATE(2009,3,31),A:D,4,TRUE)
この回答への補足
また他にもカテゴリ別などで集計する為に、
J1・・・年号のみ数値で入力済 / 例:【2009】
L1~W1・・・月を数値で入力済 / 例:【L1/1 : M1/2 : N1/3】
をしておりますので、
=VLOOKUP(DATE(YEAR(J1),MONTH(L1)+1,0),A:D,4,TRUE)
※J1には2009、L1には1の値が入っています
という様に変更してみましたが、#N/Aで値が帰ってきます。
何か数式間違っているのでしょうか?
自己解決しました。
日付の参照部分を参考に、
=INDEX(D4:D1000,MATCH(DATE($J$1,L$1+1,0),A4:A1000))
で値を出す事ができました。
ヒントをいただき、ありがとうございます。
No.6
- 回答日時:
No4です。
J1・・・年号のみ数値で入力済 / 例:【2009】
L1~W1・・・月を数値で入力済 / 例:【L1/1 : M1/2 : N1/3】
をしておりますので、
と数値で入れているのであれば
=VLOOKUP(DATE(YEAR(J1),MONTH(L1)+1,0),A:D,4,TRUE)
でなくて
=VLOOKUP(DATE(J1,L1+1,0),A:D,4,TRUE)
で十分でしょう。
右へコピィしてつかうのであれば
=VLOOKUP(DATE($J1,L1+1,0),$A:$D,4,TRUE)
としておきましょう。
No.4
- 回答日時:
◆1月 \1,077,256
◆2月 \856,059
のつきの部分に 2009/1/1 とか日付を入れて表示形式、ユーザー定義で
yy年mm月 として09年01月と表示させておきます。
後はVLOOKUP関数で
=VLOOKUP(DATE(YEAR(E2),MONTH(E2)+1,0),A2:C10,3)
としておけば月末に最も近い日付の値がでると思います。
この回答への補足
ありがとうございます。
試してみましたが、実際の構造が、増減を見る為に
A列 : シリアル値で日付
B列 : 項目名
C列 : 月の資金増減を見る為に、資金増減値
D列 : 残高
タイトル、口座情報がヘッダに有る為に、実際の開始行は【A4】からです。
になっており、このままの式を適用すると、C列の値を引いてしまいます。
何とか現在、対策考えておりますが、何か良い方法ご存じでしたら教えて下さい。
No.3
- 回答日時:
例えばお示しのデータがA,B,C列の1行目からあるとして、F1セルには2009年1月と入力し下方にオートフィルドラッグすれば2009年2月と続けて表示されますね。
G1セルには次の式を入力し下方にオートフィルドラッグすればよいでしょう。
=IF(F1="","",VLOOKUP(DATE(YEAR(F1),MONTH(F1)+1,0),A:C,3,TRUE))
この回答への補足
ありがとうございます。
試してみましたが、実際の構造が、増減を見る為に
A列 : シリアル値で日付
B列 : 項目名
C列 : 月の資金増減を見る為に、資金増減値
D列 : 残高
タイトル、口座情報がヘッダに有る為に、実際の開始行は【A4】からです。
また他にもカテゴリ別などで集計する為に、
J1・・・年号のみ数値で入力済 / 例:【2009】
L1~W1・・・月を数値で入力済 / 例:【L1/1 : M1/2 : N1/3】
の様に横方向で年号と月を持っていて、これを変更する事で翌年度でも対応できる様にシートを作成してあります。
そこで教えていただきました関数をこれに当てはめて改変しましたが、
C列の値を引いてしまいます。何とか現在、対策考えておりますが、何か良い方法ご存じでしたら教えて下さい。
No.2
- 回答日時:
A列の値はシルアル値(日付を表す数値)で入ってるんですよね?
仮に、E1セル以下に、"1月","2月","3月",…と文字列形式で月数が入力されているならば、
F1セル : =VLOOKUP(DATE(2009,SUBSTITUTE(E1,"月","")+1,0),A$1:C$999,3,TRUE)
として、下方にフィル。
------------------------------------
月数が1,2,3,…と数値で入力されているならば、単に
F1セル : =VLOOKUP(DATE(2009,E1+1,0),A$1:C$999,3,TRUE)
でOK。
------------------------------------
※DATE(2009,E1+1,0) でその月の最終日の日付が得られるので、
VLOOKUPのTRUE型で、その日付を超えない最大の日付を探します。
※31とか28とか月の日数にあわせて数式を変える必要はありません。
ご参考まで。
この回答への補足
ありがとうございます。
試してみましたが、実際の構造が、増減を見る為に
A列 : シリアル値で日付
B列 : 項目名
C列 : 月の資金増減を見る為に、資金増減値
D列 : 残高
タイトル、口座情報がヘッダに有る為に、実際の開始行は【A4】からです。
また他にもカテゴリ別などで集計する為に、
J1・・・年号のみ数値で入力済 / 例:【2009】
L1~W1・・・月を数値で入力済 / 例:【L1/1 : M1/2 : N1/3】
の様に横方向で年号と月を持っていて、これを変更する事で翌年度でも対応できる様にシートを作成してあります。
そこで教えていただきました関数をこれに当てはめて改変しましたが、
C列の値を引いてしまいます。何とか現在、対策考えておりますが、何か良い方法ご存じでしたら教えて下さい。
No.1
- 回答日時:
次の式を試してください。
1月:=VLOOKUP(DATE(2009,1,31),A:C,3,TRUE)
2月:=VLOOKUP(DATE(2009,2,28),A:C,3,TRUE)
3月:=VLOOKUP(DATE(2009,3,31),A:C,3,TRUE)
この回答への補足
ありがとうございます。
試してみましたが、実際の構造が、増減を見る為に
A列 : シリアル値で日付
B列 : 項目名
C列 : 月の資金増減を見る為に、資金増減値
D列 : 残高
タイトル、口座情報がヘッダに有る為に、実際の開始行は【A4】からです。
になっており、このままの式を適用すると、C列の値を引いてしまいます。
何とか現在、対策考えておりますが、何か良い方法ご存じでしたら教えて下さい。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) 列を自動で追加したい 3 2022/07/11 12:58
- その他(ビジネス・キャリア) エクセルで一覧表を作るときのレイアウト、月日と項目の配置について相談です。 2 2023/04/11 09:37
- Excel(エクセル) Excel リンク先のエクセルファイルの削除 同時に行を削除したい 1 2022/11/29 16:20
- Excel(エクセル) エクセル関数について 2 2022/04/13 18:25
- 会計ソフト・業務用ソフト エクセルです 2 2022/09/17 12:14
- Excel(エクセル) エクセルの数式で教えてください。 2 2023/03/10 08:51
- Excel(エクセル) エクセルの関数 2 2023/01/17 15:24
- Excel(エクセル) Excel教えてください。 下記のことが出来るのは、マクロですか?条件付き書式でしょうか、、?知恵を 5 2022/11/12 09:33
- 日本語 「 」内に適切な言葉を教えて下さい。 3 2022/06/24 11:09
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセルのdatedif関数を使って...
-
エクセルのVBAで集計をしたい
-
【マクロ】【配列】3つのシー...
-
特定のセルだけ結果がおかしい...
-
エクセル ドロップダウンリスト...
-
【マクロ】列を折りたたみ非表...
-
vba テキストボックスとリフト...
-
【関数】同じ関数なのに、エラ...
-
ページが変なふうに切れる
-
【条件付き書式】シートの中で...
-
【マクロ】オートフィルターの...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】アクティブセルの時...
-
【マクロ】3行に上から下に並...
-
エクセルの循環参照、?
-
【マクロ】A列にある、日付(本...
-
iPhoneのExcelアプリで、別のシ...
-
エクセル
-
【マクロ】WEBシステムから保存...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
9月17日でサービス終了らし...
-
エクセル
-
【マクロ】WEBシステムから保存...
-
エクセルの循環参照、?
-
エクセル ドロップダウンリスト...
-
エクセルのdatedif関数を使って...
-
特定のセルだけ結果がおかしい...
-
【マクロ】A列にある、日付(本...
-
【マクロ】EXCELで読込したCSV...
-
【マクロ】アクティブセルの時...
-
【エクセル】期限アラートについて
-
iPhoneのExcelアプリで、別のシ...
-
【関数】同じ関数なのに、エラ...
-
Excelの新しい空白のブックを開...
-
【マクロ】3行に上から下に並...
-
【マクロ】宣言は、何のために...
-
VBA チェックボックスをオーバ...
-
Excelについての質問です 並べ...
-
【マクロ】アクティブセルの2...
-
【関数】不規則な文章から●●-●●...
おすすめ情報