[[20030710164356]] 『循環参照って何ですか?累計をだすには?』(はるる) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『循環参照って何ですか?累計をだすには?』(はるる)                                                    

    〔A〕  〔B〕  〔C〕  〔D〕                                      

〔1〕                    ←その日の件数                                                                                                             
〔2〕                    ←累計

報告書を作成するのに、前日のものを修正して別名で今日の分を保存しています。

上のような4列2行の表で、A1にその日の値(件数)を入れ、A2のセルにすでに入っていたA2の値(前日までの累計)と今日入力した値の計(累計)が出るようにしたいのです。B、C、D列も同じです。
A2のセルの数式を=A1+A2としたのじゃダメなんですね。「この数式を計算できません。数式のセル参照は計算結果を参照(循環参照)しています。」という注意がでました。A2の数式は、なんと入れればよいのでしょうか?教えて下さい。


例えば、sheet1!A11に前月までの累計があったとします。

A2=SUM(A1,Sheet1!A11)
単純にこれではいけないですか?

もう少し詳しく説明していただければ、他に方法があるとおもいますが、
A2には、どのような数式がはいっていますか?(循環参照エラー前)
など、データをもう少し具体的に書いていただければ・・・。

(れあ)


れあ様さっそくのお答えありがとうございます。説明の仕方が下手で申し訳ありません。
   

1日目

       〔A〕  〔B〕  〔C〕  〔D〕                                      

〔1〕    1     2     3     4       ←その日の件数                                                                                                             
〔2〕    1     2     3     4       ←累計欄(最初だからそのままの値)

2日目(1日目と同じシート上で、同じ表の上にその日の件数だけを入力して累計欄が変わるようにしたいのです)

       〔A〕  〔B〕  〔C〕  〔D〕                                      

〔1〕    3     2     2     3       ←その日の件数 (ここだけ入力)                                                                                                            
〔2〕    4     4     5     7       ←累計欄(変わる)

累計欄A2が変わるようになるための式がわかりません。よろしくお願いします。


まず、循環参照についいてですが、簡単に言えば自分自身を参照しているということです。

>A2のセルの数式を=A1+A2としたのじゃダメなんですね。

A2のセルを解決するために、A2を参照している・・・これでは、エクセルは答えを見つけられないということですね。

それで、ご質問の件ですが、関数で解決しようとすると、一般的には、れあさんの言われるように前回までの累計を別のセルやシートに残しておいて、それに今回の追加分を加える、という方法になると思います。

どのような状況で、はるるさんの言われるようなシートの設計をされているかはわかりませんが、前回までの累計を別の場所にとっておくというのが基本になると思います。(小太郎)


すみません。別名で、当日分を作成しているのでしたね。

A2のセルを =A1+A2

のかわりに =A1+[前日分ファイル名]sheet1!A2

などとすればとりあえず循環参照は消えると思います。(小太郎)


小太郎様ありがとうございます。別名で保存してたのはこの表を入れる前のものでした。そこに新しくこの表を入れてみようと試みたのですが・・・ 。

>別A2のセルを解決するために、A2を参照している・・・これでは、エクセルは答えを見つけられないということですね。

別シート、別セルなら問題ないけど、同じシートの同じセルを入れて計算してそのセルに答えをだすのは無理なのですね。残念!         (はるる)


こんばんは。

 循環参照になる式でも、EXCELで、使用可能です。
 例のように、A2セルに、=A1+A2 これで、累計を取る事は可能です。

 「ツール」「オプション」「計算方法」で、
 「計算方法」を、「手動」 「保存前に再計算する」のっチェックを外す。
 「反復計算」で,「最大反復回数」を 1 に設定。

以上で,循環参照になる数式も、使える式になります。(ただ使用可能にするだけでしたら、衝動計算 だけで済みますが)

 ***再計算は、F9キー

ただ、リスクが伴いますので、お勧めは出来ません。それでも使用したいのであれば、
以下の注意事項が参考になると思います。

 ・計算方法の,自動・手動の設定に,不安定要素があります。
   EXCELを立ち上げて、同時に複数のファイルを開いて作業する場合、一番最初に開いたファイルの計算方法が、その次に開くファイルにも適用されてしまいます。
  例 A.xls ――> 自動計算  B.xls ――> 手動計算 と、それぞれ設定してあった場合
    ファイルを開く順序が、A――>Bの場合、B.xlsの計算方法も、自動計算になってしまいます。
    又、その逆の順で開くと、A.xlsの計算方法が、手動計算になってしまいます。

 ・もし、入力する数を間違えていた場合、いつの時点で間違えていたのかが、確認できなくなります。
   (毎日ブックを増やすということであれば、検証は出来ますが)

 ・再計算は、入力後、1度きり。
   (1度再計算させた後で、入力ミス、或いは入力もれ等が、解った場合、修正が手間どる)

とりあえず、解る範囲で、こんなところですが、いかがでしょうか?  (TORI) 


TORI様 ありがとうございます。確かに手動ですると、問題なくできました。でも、その他のリスクもあるので今回はこの表はやめます。
皆様、勉強になりました。ありがとうございました。  (はるる)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.