循環参照は、数式が直接または間接的に、数式が格納されているセルを参照する場合に発生します。たとえば、B3に式= B2 + B3が含まれている場合、B3には循環参照が含まれます。

通常、循環参照は数式の誤りを表します。ただし、循環参照が望ましい状況がいくつかあります。

Excelでは、ワークシートに循環参照を含めることができますが、それらについては少し厄介になる可能性があります。

[反復計算を有効にする]コントロールがオンになっている場合、ほとんどの場合、Excelは循環参照に対して非常に寛容です。 ([Excelのオプション]ダイアログボックスを表示し、ダイアログボックスの左側にある[数式]をクリックします。)[反復計算を有効にする]チェックボックスをオンにして循環参照を入力すると、Excelは抗議しません。代わりに、[Excelのオプション]ダイアログボックスの設定を使用して、循環参照が完了したと見なされるまでに繰り返される回数を制御します。

[反復計算を有効にする]チェックボックスの設定はブックの一部として保存されているようですが、後でブックがExcelに読み込まれるときに常に注意が払われるとは限りません。実際、ワークブックを開く前に次のいずれかが発生した場合、設定は完全に無視されます。

  • Excelを最初に起動したときに作成されたデフォルトのブック以外のブックを開きます。

  • デフォルトのブックが表示されているときに[反復]チェックボックスを変更します。

Excelが行うことは、最初に開いたブックの[反復計算を有効にする]チェックボックスの設定を調べることです。この設定は、Excelとの現在のセッションの「デフォルト」になります。同じセッション中にロードされた他のワークブックの場合、[反復計算を有効にする]チェックボックスの保存された設定は無視されます。

さらに、システムで個人用ブックが定義されている場合は、そのファイル内の[反復計算を有効にする]チェックボックスの設定が常にデフォルトとして使用されます。どうして?個人用ブックは常に最初に開かれるブックであり、最初に開かれるブックは常に設定のデフォルトを定義するためです。

循環参照を使用する保存済みのブックがあり、[反復計算を有効にする]チェックボックスがオフになっている場合(デフォルトまたは明示的に)、循環参照を含むブックを開くと、Excelに警告が表示されます。警告を表示したくない場合は、他のブックの前にブックを開くか(反復設定が使用されるようにするため)、[反復計算を有効にする]チェックボックスを明示的に設定してから開くことをお勧めします。ワークブック。

ブックを開く順序を気にせず、[反復計算を有効にする]チェックボックスの設定を常に変更したくない場合は、[反復計算を有効にする]チェックボックスがオンになっていることを確認するマクロを作成できます。ワークブック。ブックのOpenイベントにマクロを割り当てると、ブックが開かれるたびにマクロが実行されるため、表示したくない警告が表示されなくなります。マクロは次のように表示されます:

Private Sub Workbook_Open()

Application.Iteration = True End Sub

システムにパーソナルワークブックを定義している場合は、個々のワークブックではなく、このマクロをシステムに追加できます。このようにして、すべてのExcelセッションで[反復計算を有効にする]チェックボックスが常に選択されていることを確認できます。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(9748)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。