Excelを使用すると、あるワークシートから別のワークシートに、またはあるワークブックから別のワークブックに情報をリンクできます。多くの人は、1つのワークシートを他のワークシートに含まれる情報の「要約」概要として使用するときに、まさにこれを行います。

この方法でデータを整理すると、ワークシート内のリンクを変更するための最良の方法について疑問に思うかもしれません。情報をリンクすると、Excelはリンクのソースのリンク内を追跡します。たとえば、次のリンクは、2019Budget.xlsワークブックのOctoberDataワークシートのセルC7を参照しています。

=+[2019Budget.xls]OctoberData!$C$7

ワークシートにこれらのリンクがかなりある場合、リンクで使用されるソースワークブックまたはワークシートを変更するときに各リンクを更新するのは面倒な場合があります。もちろん、Excelの検索と置換機能を使用して必要な変更を加えることもできますが、もっと簡単な方法があります:

INDIRECT関数とADDRESS関数を使用します。

たとえば、ワークブック名​​(J1)、ワークシート名(J2)、数値の行番号(J3)、および列番号(J4)を含むセルがあるとします。この場合、次の式を使用してリンクを指定できます。

=INDIRECT(ADDRESS(J3,J4,1,TRUE,"["&J1&"]"&J2))

その結果、Excelはセルの内容に基づいて間接アドレスを計算します。 Excelが情報を取得する場所を変更する場合は、セルJ1からJ4の内容を変更して、目的のソースを表すようにするだけです。

このアプローチを使用するには、ソースワークブックを開いておく必要があることに注意してください。それらが開いていない場合、Excelは必要に応じて情報を更新できません。

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

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