• ベストアンサー

計算結果の反映

お世話になります。 上手く説明できるかどうか。 A列に日付 B列に収入 C列に支出 D列に残高 とします。 日々、入力していきます。 日々、残高を表示させます。 当月末の残高が出ました。 その残高を翌月の前月残高として始めたいのです。 月ごとにシートを増やしていっても、必ず当月残が翌月の前月残として反映させる計算式がありますか。

  • RDT23
  • お礼率93% (577/618)

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

  • ベストアンサー
  • m_and_dmp
  • ベストアンサー率54% (974/1797)
回答No.4

No.3 です。 そうですね、新しいシートを作る(シートを増やす)たびに「前月より繰越」セルをその前シートのセルD32 を参照するという作業が必要です。 INDIRECT 関数を使ってシート名を参照しても、シート名の指定は必要ですが、シート名の指定(取得)を自動化することはできます。 シート名を指定するセルを「セルH1」 とします。 「前月より繰越」を「セルB1」 とします。 セルB1 に次の式を入力します。 =INDIRECT(H1&"!D32") これは、セルH1 に記述されているシートのD32 を参照するという意味です。 セルH1 に次の式を入力します。 ="SHEET"&SHEET()-1 これは、現在選択されているシートのシート番号を取得し、その番号から1を引いた数値を計算し、その数値の前に、SHEET という文字列を追加する式です。 結果は SHEETn (nは数字)になります。 =SHEET() と記述すると、現在選択されているシートの番号を取得することができます。( () は半角のカッコです。) これで完全自動化ができるのですが、シート名は左からSheet1, Sheet2, Sheet3・・・として試しました。シート名を適当な名前に変更すると正しく動作しません。 ここまでやる必要がありますか?新しいシートを作ったとき、前月のシートのセルD32を参照する手間は新しいシートを作る手間に僅かな作業を追加するだけだと思いますが、

RDT23
質問者

お礼

お世話になります。 お手数かけております。 あまり難しく考えても、かえって手間になりそうですね。

その他の回答 (3)

  • m_and_dmp
  • ベストアンサー率54% (974/1797)
回答No.3

私は次のようにしています。 日々入力するとして、31日分の行が必要です。あらかじめ31日分の行を作成しておきます。 31日の行の下に合計を計算するための行を追加します。その行が仮に32行とすると、 セルB32 に1日から31日までの収入の合計をSUM 関数で計算します。 セルC32に1日から31日までの支出の合計をSUM 関数で計算します。 セルD32につぎの式を入力します。=B32-C32 これで、セルD32 は常に最終入力日の残高になります。 翌月のシートの「前月より繰越」は、セルD32 を参照したら良いのです。 難しい関数を使うよりシンプルでわかりやすい方法です。

RDT23
質問者

お礼

ご回答ありがとうございます。 理解できました。 このやり方ですと、シートを増やすごとに計算式(参照)を変更していく必要がありませんか?

  • kon555
  • ベストアンサー率52% (1750/3356)
回答No.2

 幾つか方法はありますが、このあたりが参考になると思います。 https://detail.chiebukuro.yahoo.co.jp/qa/question_detail/q12245402397 https://qiita.com/shibahead/items/e4e8dc26df78f220a674

RDT23
質問者

お礼

ご回答ありがとうございます。 もう少し勉強します。

  • msMike
  • ベストアンサー率20% (363/1775)
回答No.1

Sheet2!D2: =LOOKUP(10^308,Sheet1!D:D)

RDT23
質問者

お礼

ご回答ありがとうございます。 今少し、勉強させていただきますね。

関連するQ&A

  • エクセル:シートを増やすと計算が反映されません・・

    No.465690で計算の仕方を教わったものです。(以下引用) -------------------- 今現在、 ・毎月の計算で、月ごとにシートが増えていきます。 ・毎月、当月の売上と累計を手入力しています。 例として、1月からスタートするとして <1月 sheet1>   A     B 1当月売上 150(手入力) 2売上累計 150(手入力) <2月 sheet2>   A     B 5当月売上 180(手入力) 6売上累計 330 ※分かりやすくする為、行の番号を変えてみました1.2と5.6  A.Bは列番号とお考え下さい これを、2月の当月売上だけを入力すれば、 自動的に2月の売上累計が増えるようにはできませんか? そして3月も同じく、当月売上を入力して 2月で計算された累計にプラスすることはできるのでしょうか?? ご指導お願いいたします。 -------------------- これで教えていただいた方法(2月sheet2で =sheet1!B2+B5)で 確かに計算は出来たのですが、 翌月(3月)にシートをコピーなどして増やしても sheet3の欄には =sheet1!+B5 となってしまい、 1月+3月という形になってしまいます。(当たり前なのでしょうが・・) 毎月計算式を手入力するのなら式を入れる意味が無いので・・・ なんとか「前月+今月」という計算をする方法は無いでしょうか。 シートを毎月増やしていく事から、シートの増やし方も踏まえて 教えていただけないでしょうか・・・。 <1月 sheet1>   A     B 1当月売上 150(手入力) 2売上累計 150(手入力) <2月 sheet2>   A     B 5当月売上 180(手入力) 6売上累計 330(=sheet1!B2+B5) <3月 sheet3>   A     B 7当月売上 50(手入力) 8売上累計 380 になるために・・(?)

  • 現金出納帳の差引残高の関数

    お世話になります。 エクセルで現金出納帳を作ろうと思っています。 A~D列には日付や勘定科目などを、Eには収入金額、Fに は支出金額、そしてGには差引残高を自動で計算するよ うに関数を入れました。 すると計算はきちんとできるのですが、Gの列全てに残 高が表示されるので、見苦しいです。 収入・支出をまだ入力していない行にはG欄に残高が表 示されないように関数を入れるにはどのようにすれば よいでしょうか。自分なりに考えて =IF(ISBLANK(E3:F3),"",SUM($E$2:E3)+$G$2-SUM($F$2:F3)) (+$G$2というのは前月繰越残高です。) と入力してみましたが、ダメでした。 分かりにくい文章ではあると思いますが、よろしくご指 導のほどお願いいたします。

  • エクセル 左隣のシートを参照

    恐れ入りますが御教示ください。 エクセルで新しく次のような表を作りました。 シート名 4月 B列 前月残高 C列 当月増 D列 当月減 E列 当月残高 E列には例えば3行目なら=B3+C3-D3という式が入っています。 次に、このシートを右隣にコピーして、シート名を5月に変えます。 お伺いしたいのは、4月の残高を5月の前月残高に写す、そして6月以降を作る時、この作業(左隣のシートの当月残高を前月残高に写す)を自動化する方法です。 よろしくお願い致します。

  • EXELマクロ計算式

    家計簿を作成中です。前の日にちの残高から収入をたし、支出を引き残高を計算したいのですが、 B列収入、C列支出、D列残高 Range("D3").Select ActiveCell.FormulaR1C1 = "=R[-1]C+RC[-2]-RC[-1]" Range("D4").Select と言う計算式を"D3"などの数値ではなく変数など代入式をつかった式を教えてください。

  • エクセルでブックをまたいで数値を反映させたい

    エクセルでブックをまたいで数値を反映させたい 二ヶ月ごとにブックを作り、その中にワークシートを一週間分ずつ作成しています。 ひとつめが第一週、ふたつめが第二週……として、最後のワークシートは第八週か第九週と なっています。 重要な列は三列あって、真ん中に前の週に入力された数値が表示されており 左側に今回の数値を入力します。 そして、それらの一番右側に今回入力した数値から前回入力した数値を引いた 数値が表示されるようになっています。 第一週のワークシートの真ん中の列には、前月の最終週に入力した数値が 表示されるようになっているのですが、いままでは第ゼロ週というワークシートを作成し そこに前月の最終週を手動で入力して表示させていたのです。 ブックをまたいで、前月の最終週のワークシートの数値を翌月の第ゼロ週のワークシートに 反映させるにはどうすればよいのでしょうか?

  • エクセルで計算式が反映されない。

    いつもお世話になります。 エクセル(たしか2007)で日報を作成し、管理しています。 前日のシートから日付と金額を呼び出す数式を入れて使っていましたが、 なぜか数式が表示される上、反映されなくなってしまいました。 以前から使っていて、うまく行っているファイルの書式などを 見比べても何がおかしいのかわかりません。 シートは1,2,3,4,5日付順に並んでいます。 ='1'!AA133:AB133 こういった計算式で1日に入力した金額や日付、商品名を2日に反映させたい のですがそのまま2日のセルには'1'!AA133:AB133と表示されてしまいます。 もちろんイコールは入っているし、種類も文字列や金額など いろいろ弄っては見たんですが...。 ちなみに日付の部分だけが反映されてなくて、 金額や商品名は同じ書式で出ています。 何か心当たりがある方はご教授いただけると助かります。

  • EXCELについて教えて下さい

     1月  +  -  2月 A B C 計  罫線がないのでわかりにくいのですが、上図のように項目ごとに毎月、残高を計算する表を作ろうと思っています。  項目が多いので実際にはひと月ごとにシートを作っていきたいのですが、シートをコピーすれば当月の残高が翌月に前月の残高のところにくるようにすることはできないのでしょうか?毎月シート増えていくものなので毎回設定していては大変なので・・。教えて下さいお願いします。

  • 行の並び順に影響させない方法

    図は入出金管理のための【テーブル】です。 ・当月分入金データをG,H,Iに打ち込む ・残高Jが計算される ・翌月になったら当月分の300行をコピーし、当月の下に貼り付ける ・翌月の最前行の前月残高の欄に=J34などと数式を入れると最後尾まで数式が入る ※このあと作業のため翌月分の行を並べ替えると前月残高が狂う(当然) ※になることを防ぐ方法は無いでしょうか? よろしくお願いします。

  • 文字による計算方法

    文字による計算方法 いつもお世話になります。 WINDOWS XP   EXCELL2003 D列に 収入でひとつのみの項目で「売上」、その他は支出ですがこれはいくつかの項目があります。 「売上」は+ その他の項目は- の式になれば良いのですが。 この場合何かいい方法で残高ができる計算方法が可能でしょうか。 もし可能ならお知恵をお貸しいただけないでしょうか。 宜しく御願いします。 ※D列の残高計算はイメージした物です。

  • エクセルでの家計簿作成にアイデアを!

    表題の件で、質問させてください。 いま、エクセルで家計簿を作ろうとしています。 で、シート1には銀行の通帳と全く同じ感じに入力(つまり日付、払い戻し、入金、残高)、シート2には手持ちのお金について、日付、支出、収入、残高の項目をもうけております。 まぁ、いずれのシートも基本的には同じ項目です。 で、シート3で、月ごとの支出・収入をまとめていこうと考えています。 なので、要するには、シート3のとB1セルに、ある月のシート1の払い戻し、C1セルにある月の入金のリンクをはり、D1セルに支出、E1セルに収入のリンクをはりました。 で、月ごとの支出はB1+D1、収入はC1+E1の計算をさせました。 で、 銀行から現金を引き出した場合、その金額をシート2の収入として取り扱うことで、手元にある現金の残高を管理しようとしていました。 が、ここで問題発生なのです。 銀行からの引き出しは、シート3上で、支出として取り扱われて、使用したわけではないのに、シート3上では、何かの購入や支払いをしたことになってしまうことに気がつきました。 また収入に関しても、上記では、銀行に振り込まれる給与だけでなく、銀行から引き出した現金も収入として取り扱われてしまいます。 長文になってしまいましたが、上記の二つの問題点をなんとか回避するためのアイデアはないでしょうか? よろしくお願いします。

専門家に質問してみよう