スキップしてメイン コンテンツへ

循環参照を削除または許可する

数式が入力されましたが、動作していません。 代わりに、"循環参照" に関するメッセージが示されます。 多くのユーザーから同じ問い合わせを受けていますが、これは、数式が入力されているセル自体を計算しようとし、かつ反復計算と呼ばれる機能がオフになっているために発生します。 次にその例を示します。

循環参照の原因となる数式

数式 = D1 + D2 + D3 区切りはセル D3 に存在し、それ自体を計算しようとしているためです。 この問題を解決するには、数式を別のセルに移動します。 Ctrl キーを押しながら Xキーを押して数式を切り、別のセルを選んで、ctrl キーを押しながら Vキーを押して貼り付けます。

もう1つの一般的な間違いは、自己参照を含む関数を使用することです。たとえば、セル F3 には = SUM (A3: F3) が含まれています。 次に例を示します。

お使いのブラウザーではビデオがサポートされていません。 Microsoft Silverlight、Adobe Flash Player、Internet Explorer 9 のいずれかをインストールしてください。

このような方法もお試しいただけます。

  • 数式を入力中である場合は、数式を入力したセルから始めて、そのセル自体を参照しているかどうかを確認します。 たとえば、セル A3 に =(A1+A2)/A3 のような数式が含まれている場合があります。 (セル A1 内の) =A1+1 のような数式も循環参照エラーの原因になります。

調査を行う場合は、間接参照も確認します。 間接参照は、セル A1 に入力した数式が B1 にある数式を使用し、今度はその数式がセル A1 を参照する場合に発生します。 わかりにくい場合は、これが Excel にどのように影響するかを考えてみましょう。

  • エラーを見つけられない場合は、[数式] タブをクリックし、[エラー チェック] の横にある矢印をクリックして、[循環参照] をポイントし、サブメニューの一覧の最初のセルをクリックします。

    循環参照コマンド

  • セルに入力されている数式を確認します。 そのセルが循環参照の原因かどうかを特定できない場合は、[循環参照] サブメニューに表示されている次のセルをクリックします。

  • ステータス バーに "循環参照" と表示されなくなるまで手順 1 から 3 のうち必要な手順またはすべての手順を繰り返して、ブックの循環参照を確認および修正します。

ヒント    

  • 左下のステータス バーには "循環参照" という文字列と 1 つの循環参照のセル番地が表示されます。

    アクティブなワークシートではなく、他のワークシートに循環参照が存在している場合は、ステータス バーには "循環参照" のみ表示され、セル番地は表示されません。

  • トレース矢印をダブルクリックすると、循環参照しているセルの間を移動できます。 この矢印は、現在選択されているセルの値に影響を与えるセルを示しています。 トレース矢印を表示するには、[数式] をクリックしてから、[参照元のトレース] または [参照先のトレース] をクリックします。

    参照元のトレース

循環参照に関する警告メッセージについて

Excel で循環参照が初めて見つかったとき、警告メッセージが表示されます。 [OK] をクリックするか、メッセージ ウィンドウを閉じます。

メッセージを閉じると、セルに0または最後の計算値のいずれかが表示されます。 "最後に計算された値が終了しましたか?" という指示が表示されるようになりました。 はい。 場合によっては、数式を計算する前に正常に実行されることがあります。 たとえば、 IF 関数を使用する数式は、ユーザーが引数 (数式を適切に実行するために必要なデータの一部) を入力したときに有効になり、数式が自動的に計算されます。 その場合、Excel では、最後に計算された値がそのまま保持されます。

0 が表示されていないセルについて循環参照が疑われる場合は、次の手順を実行します。

  • [数式] バーで数式をクリックし、Enter キーを押します。

大事な    多くの場合、循環参照を含む追加の数式を作成すると、警告メッセージが再び表示されません。 次の一覧は、警告メッセージが表示されるシナリオをいくつか示しています。

  • 開いているブックで、ある循環参照を初めて作成したとき

  • 開いているすべてのブックですべての循環参照を削除してから、新しい循環参照を作成したとき

  • すべてのブックを閉じ、新しいブックを作成して、循環参照を含む数式を入力したとき

  • 循環参照を含むブックを開いたとき

  • 他に開いているブックがない場合に、ブックを開いて、循環参照を作成したとき

反復計算について

場合によっては、関数を (特定の数値条件を満たすまで) 繰り返し実行するために、循環参照が必要な場合もあります。 これにより、コンピューターの動作が遅くなる場合があるので、Excel 内では反復計算は通常はオフになっています。

反復計算を使い慣れていていない場合は、循環参照をそのままにしないことをお勧めします。 必要な場合は、反復計算を有効にできますが、数式で再計算を行う回数を決める必要があります。 反復計算を有効にし、最大反復回数または変化の最大値の値を変更しないと、計算が 100 回繰り返されるか、または循環参照のすべての値の変化が 0.001 より小さくなるかのいずれか一方の状態になると、Excel の計算が停止します。 ただし、繰り返しの最大回数および許容可能な変化の量を制御できます。

  1. Excel 2010 以降を使っている場合は、[ファイル]、[オプション]、[数式] の順にクリックします。 Excel for Mac を使っている場合は、[Excel] メニューをクリックしてから、[環境設定]、[計算方法] の順にクリックします。

    Excel 2007 を使用している場合は、[ Microsoft Office ボタン Office ボタンの画像 をクリックし、[ Excel のオプション] をクリックして、[数式] カテゴリをクリックします。

  2. [計算方法の設定] の [反復計算を行う] チェック ボックスをオンにします。 Mac で [反復計算を使う] をクリックします。

  3. 再計算を実行する最大の回数を設定するには、[最大反復回数] ボックスに反復計算の回数を入力します。 反復計算の回数が多いほど、ワークシートの計算に必要な時間は長くなります。

  4. [変化の最大値] ボックスに、反復の継続に必要とされる最小値を入力します。 これは、計算された値における最も小さい変更です。 数値が小さいほど、計算結果は正確になりますが、ワークシートの計算に必要な時間は長くなります。

反復計算の結果は、次の 3 つのうち、いずれかになります。

  • ソリューションの収束。これは、安定した結果が到達することを意味します。 これは、お勧めの条件です。

  • 解が発散します。つまり、計算を反復することにより、現在の結果と前の結果とで相違が増大します。

  • 解が 2 つの値の入れ替えになります。 たとえば、最初の反復後は結果が 1、次の反復後は結果が 10、その次の反復後は結果が 1 のようになります。

ページの先頭へ

補足説明

Excel Tech Community では、いつでも専門家に質問できます。Microsoft コミュニティでは、サポートを受けられます。また、Excel User Voice では、新機能についての提案や改善案を送信することができます。

関連項目

Excel の数式の概要

壊れた数式のエラーを回避する方法

数式エラーを見つけて修正する

Excel キーボード ショートカットとファンクション キー

Excel 関数 (アルファベット順)

Excel 関数 (機能別)

注:  このページは、自動翻訳によって翻訳されているため、文章校正のエラーや不正確な情報が含まれている可能性があります。 私たちの目的は、このコンテンツがお客様の役に立つようにすることです。 情報が役に立ったかどうか、ご意見をお寄せください。 参考までに、こちらから英語の記事をお読みいただけます。

Office のスキルを磨く
トレーニングの探索
新機能を最初に入手
Office Insider に参加する

この情報は役に立ちましたか?

ご意見をいただきありがとうございます。

フィードバックをお寄せいただき、ありがとうございます。Office サポートの担当者におつなぎいたします。

×