• ベストアンサー

EXCEL 月末の値の取得

家計簿を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   ・      ・     ・   ・      ・     ・   ・      ・     ・

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

  • ベストアンサー
noname#99913
noname#99913
回答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)

heintz_w_g
質問者

お礼

自己解決しました。 日付の参照部分を参考に、  =INDEX(D4:D1000,MATCH(DATE($J$1,L$1+1,0),A4:A1000)) で値を出す事ができました。 ヒントをいただき、ありがとうございます。

heintz_w_g
質問者

補足

また他にもカテゴリ別などで集計する為に、  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で値が帰ってきます。 何か数式間違っているのでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (5)

  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答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) としておきましょう。

heintz_w_g
質問者

補足

ありがとうございます。 コピーの部分、参照させていただきました。 皆様、色々ありがとうございます。

全文を見る
すると、全ての回答が全文表示されます。
  • hallo-2007
  • ベストアンサー率41% (888/2115)
回答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) としておけば月末に最も近い日付の値がでると思います。

heintz_w_g
質問者

補足

ありがとうございます。 試してみましたが、実際の構造が、増減を見る為に  A列 : シリアル値で日付  B列 : 項目名  C列 : 月の資金増減を見る為に、資金増減値  D列 : 残高 タイトル、口座情報がヘッダに有る為に、実際の開始行は【A4】からです。 になっており、このままの式を適用すると、C列の値を引いてしまいます。 何とか現在、対策考えておりますが、何か良い方法ご存じでしたら教えて下さい。

全文を見る
すると、全ての回答が全文表示されます。
  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答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))

heintz_w_g
質問者

補足

ありがとうございます。 試してみましたが、実際の構造が、増減を見る為に  A列 : シリアル値で日付  B列 : 項目名  C列 : 月の資金増減を見る為に、資金増減値  D列 : 残高 タイトル、口座情報がヘッダに有る為に、実際の開始行は【A4】からです。 また他にもカテゴリ別などで集計する為に、  J1・・・年号のみ数値で入力済 / 例:【2009】  L1~W1・・・月を数値で入力済 / 例:【L1/1 : M1/2 : N1/3】 の様に横方向で年号と月を持っていて、これを変更する事で翌年度でも対応できる様にシートを作成してあります。 そこで教えていただきました関数をこれに当てはめて改変しましたが、 C列の値を引いてしまいます。何とか現在、対策考えておりますが、何か良い方法ご存じでしたら教えて下さい。

全文を見る
すると、全ての回答が全文表示されます。
  • _Kyle
  • ベストアンサー率78% (109/139)
回答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とか月の日数にあわせて数式を変える必要はありません。 ご参考まで。

heintz_w_g
質問者

補足

ありがとうございます。 試してみましたが、実際の構造が、増減を見る為に  A列 : シリアル値で日付  B列 : 項目名  C列 : 月の資金増減を見る為に、資金増減値  D列 : 残高 タイトル、口座情報がヘッダに有る為に、実際の開始行は【A4】からです。 また他にもカテゴリ別などで集計する為に、  J1・・・年号のみ数値で入力済 / 例:【2009】  L1~W1・・・月を数値で入力済 / 例:【L1/1 : M1/2 : N1/3】 の様に横方向で年号と月を持っていて、これを変更する事で翌年度でも対応できる様にシートを作成してあります。 そこで教えていただきました関数をこれに当てはめて改変しましたが、 C列の値を引いてしまいます。何とか現在、対策考えておりますが、何か良い方法ご存じでしたら教えて下さい。

全文を見る
すると、全ての回答が全文表示されます。
noname#99913
noname#99913
回答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)

heintz_w_g
質問者

補足

ありがとうございます。 試してみましたが、実際の構造が、増減を見る為に A列 : シリアル値で日付 B列 : 項目名 C列 : 月の資金増減を見る為に、資金増減値 D列 : 残高 タイトル、口座情報がヘッダに有る為に、実際の開始行は【A4】からです。 になっており、このままの式を適用すると、C列の値を引いてしまいます。 何とか現在、対策考えておりますが、何か良い方法ご存じでしたら教えて下さい。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • 月末の求め方について

    VBAで関数を使わないで閏年から各月の月末が求められるプログラムを教えてください。 任意の年と月から求められるようにしたいです。 分からなくて困ってます

  • エクセルの数式を教えてください。

    エクセルの数式を教えてください。 銀行の通帳をイメージしてください。 A列に日付、B列に残高が記録されています。 この状態で、月末毎の残高を抽出する数式を教えてほしいのです。 つまり 2010年7月なら7/31の時点での残高、2010年8月なら8/31の時点での残高を知りたいのです。 何卒、よろしくお願いします。

  • 月末の値と、毎日の値の差額を計算したい。

    株の収支をエクセルで管理していますが、関数がわかりません。 例えば、 日付     日経平均 2月末     10.624 3/1       10.754 3/2       10.492 合計       -132 毎日、日経平均を記入したときに下段の合計額に、2月末との差異を計算したいです。 3/1なら +130 3/2なら -132というように前月末比の金額を表示させたいのですが、 関数がわかりません。 わかる方いましたら教えてください。よろしくお願いします。  

  • エクセル2003で表を作成し、ある項目だけ抽出する方法

    エクセル2003で、出納帳を作成しています。 当然出納帳ですから、各セルには関数が入力されています。列がF列まで、行は永久に下まである表です。 B列に勘定科目として見出しをつけています。売り上げ、備品、出張費等10項目くらいあります。その項目を、1項目分の行すべて抽出し、別の場所に移動(同じ場所でもいいのですが)し、さらに残高、入金、出金欄をその抽出した行のみで再計算をする、というものです。 可能でしょうか?? オートフィルですと、きれいに項目別で抽出されるのですが、式の再計算まではしてくれません。その項目での入出金、残高を計算、表示する方法を教えてください。 よろしくお願いします。

  • エクセルの関数での集計について

    エクセルで家計簿を作成しています。年間のカード使用履歴を1シートで管理してます。 B列に月(1~12)、G列に金額、I列に区分(飲食費など)が入力してあります。 別シート(各月ごと12シート)に各月ごと区分ごとのカード使用金額を集計したいのですが、やり方が分かりません。関数で出来るのでしょか。

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

    エクセルの関数についてご質問させていただきます。 シート1で毎月データを入力していたとします。 例えば、1月は 1,2,3,4,5 2月は 6,7,8,9,10 だっとします。 3月は 11,12,13,14,15だっとします。 これを別シートで 1月入力時点(2月未入力)では ○ 2月入力時点で△ 3月入力時点で□ と、いう具合に各月入力毎に特定の記号などの結果を反映させるような関数または方法はあるでしょうか? 当初、IF関数でできるかと思ったのですが、この関数だと 連続データとして1月、2月、3月と結果を表示させる場合だといけるのですが 入力毎に結果を変更するようなケースではできないかと思いました。

  • Excelで月を跨いだ場合月末を表示させる

    Excelの関数についてですが マクロで使用するために セルに入力した日付の7日後の日付を他のセルに表示させるようにしています。 例: A1に2014/11/17と入力すると A2に2014/11/24と表示 A1に2014/11/24と入力すると A2に2014/12/1と表示 下の例のように現状では単純に7日をプラスするため12/1まで自動計算されてしまうのですが これを入力された日から7日計算してもし月を跨いだ場合その月の月末を表示させるにはA2にどのような計算式を入力すればいいか教えてください。

  • エクセルで複数の条件を満たした値を返す関数を教えてください。

    エクセルで複数の条件を満たした値を返す関数を教えてください。 (画像を添付しました) 左の表(A1からD9)のデータを右の表でIDと製品を選択すると 会社名、名前が抽出するような関数を教えてください。 INDEXやMATCHなど使ってみたんですが、組み方が悪いのかうまく抽出できませんでした。 よろしくお願いします。

  • 月末を動的に表示、非表示にする

    エクセルで、年、月を入力するとその月の日付が動的に表示されるものを作っています。 月末の問題で、31日の日もあれば30日の日もあるため、 DATE(YEAR(年),MONTH(月)+1,1)-1で月末を求め、IF文で制御しようと、 IF((DATE(YEAR(年),MONTH(月)+1,1)-1)=31,"31","")という式を入れているのですが、 30日の月も、31日の月も日が表示がされません。 どこに問題があるのでしょうか。かなり切羽詰っています。 エクセルの関数は苦手のため、 お詳しい方がいらっしゃいましたらご回答お願いします。

  • Excelのハイパーリンク?

    まず、Excelファイル名が【2019家計簿】の中にシート名【1月】【2月】【3月】【4月】【5月】【6月】【7月】【8月】【9月】【10月】【11月】【12月】の12個のシートがあります。またExcelファイル名が【2020家計簿】の中にシート名【1月】【2月】【3月】【4月】【5月】【6月】【7月】【8月】【9月】【10月】【11月】【12月】の12個のシートがあります。 この様な時、関数やハイパーリンク機能を使って、例えばExcelファイル名が【2019家計簿】の中のシート名【12月】に一回でジャンプする方法ってあるのでしょうか?Excelって何でもできると理解していますが・・・ 宜しくお願いします。

専門家に質問してみよう