dポイントプレゼントキャンペーン実施中!

EXCELで
例えば

C1に
=A1*B1

E1に
=C1*D1

でE1をC1に移動するとループになりますよね.
その場合はどうすれば言いのですか?

実際にはsheet10!D32424の値をsheet1のR32に移動するとループになります.

A 回答 (3件)

質問にあるとおりの入力を行い、E1をC1に移動するとC1は#REF!エラーになります。

これは「ループ」とは呼びません。「循環参照」です。例えばA2セルに =A2 と入れてみて下さい。エラーメッセージがでるはずです。

エクセルの数式で、その数式を入力したセルの値を参照する場合循環参照となりエラーになります。循環参照があると計算結果は不正となり、エクセル画面の一番下に小さく「循環:セルのアドレス」が表示されているはずです。

どうすればよいか。それは数式で「自分のセルドレスを参照しない」ように修正すればよいです。

なお「ループ」とはプログラム(EXCELのマクロを含む)で処理が無限に終わらない状態を言うのが一般的です。この質問の場合はあまり適切な表現ではありませんね。
    • good
    • 0

こんばんは。



一体、何を求めるかであって、式の移動によるエラー(参照エラー #REF!)は、結果論ではありませんか?

>実際にはsheet10!D32424の値をsheet1のR32に移動するとループになります.

だから、Sheet10の D32424 の値を、Sheet1のR32 に求めるのであれば、=Sheet10!D32424 と入力すれば、その値は得られるわけです。移動と考えるから、分からなくなるのではありませんか?式によって得ようとするセルの値(参照セル)なのだと思います。
    • good
    • 0

私の理解力不足をさらすようで恥ずかしいのですが、ご参考まで。



何をなさりたいのか、良く分かりませんでした。数式で書くと
・・・A*B*(A*B*(C*D)*D)*D・・・
のような計算をされたいということでしょうか。数式でも無限大乗になるのでしたら、Excelの数式/関数やマクロでも計算できないと思います。
再帰呼び出しの例として、階乗が取り上げられることがあると思いますが、このような事例であれば、階乗がそうであるようにユーザー定義関数を作成すれば対応可能と思います。
    • good
    • 0

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