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

Excelの動的なワークシートまたはワークブック参照

Author: Siluvia Last Modified: 2025-08-06

複数のワークシートやワークブックに同じ形式のデータがあり、これらのワークシートやワークブックから別のシートにデータを動的に取得する必要があるとします。INDIRECT関数を使用すると、それを迅速に実行できます。

doc-dynamic-worksheet-reference-1

別のワークシートのセルを動的に参照する
別のワークブックのセルを動的に参照する


別のワークシートのセルを動的に参照する

例えば、4人の営業担当者の四半期ごとの売上が記載された4つのワークシートがあり、対応する営業担当者に基づいて四半期の売上を動的に取得するサマリーワークシートを作成したいとします。これを機能させるには、以下の数式が役立ちます。

汎用数式

=INDIRECT("'"&sheet_name&"'!データを返すセル")

doc-dynamic-worksheet-reference-2

1. 下のスクリーンショットに示すように、まず、異なるセルに個別にシート名を入力してサマリーワークシートを作成し、空白のセルを選択して、次の数式をコピーして貼り付け、Enterキーを押します。

=INDIRECT("'"&B3&"'!C3")

doc-dynamic-worksheet-reference-3

: コード内では、

  • B3は、データを取得するシート名が含まれているセルです。
  • C3は、特定のワークシート内のデータを取得するセルアドレスです。
  • B5(シート名のセル)またはC3(データを取得するセル)が空の場合にエラー値が返されるのを防ぐために、INDIRECT関数をIF関数で囲み、次のように表示してください:
    =IF(OR(B3="",C3=""),"",INDIRECT($B$3&"!C3"))
  • シート名にスペースがない場合は、この数式を直接使用できます。
    =INDIRECT(B3&"!C3")

2. 次に、フィルハンドルを下にドラッグして数式を他のセルに適用します。これで、特定のワークシートから第1四半期のすべての売上が返されます。

doc-dynamic-worksheet-reference-4

3. 必要に応じて、他の四半期のすべての売上も取得してください。また、数式内のセル参照を変更することを忘れないでください。

doc-dynamic-worksheet-reference-5


別のワークブックのセルを動的に参照する

このセクションでは、Excelで別のワークブックのセルを動的に参照する方法について説明します。

汎用数式

=INDIRECT("'[" & Book name & "]" & Sheet name & "'!" & Cell address)

下のスクリーンショットに示すように、「SalesFile」という名前の別のワークブックにある「Total sales」ワークシートの列Eに返したいデータがあります。以下の手順に従って操作を行ってください。

doc-dynamic-worksheet-reference-6

1. まず、データを取得するためのワークブック情報(ワークブック名、ワークシート名、参照セルなど)を入力します。この情報を基に現在のワークブックにデータを取得します。

2. 空白のセルを選択し、次の数式をコピーして貼り付け、Enterキーを押します。

=INDIRECT("'["&$B$3&"]"&$C$3&"'!"&D3)

doc-dynamic-worksheet-reference-7

:

  • B3には、データを抽出するワークブック名が含まれています。
  • C3はシート名です。
  • D3は、データを取得するセルです。
  • 参照されているワークブックが閉じている場合、#REF! エラー値が返されます。
  • #REF! エラー値を回避するには、INDIRECT関数を以下のようにIFERROR関数で囲んでください:
    =IFERROR(INDIRECT("'["&$B$3&"]"&$C$3&"'!"&D3),"")

3. 次に、フィルハンドルを下にドラッグして数式を他のセルに適用します。

doc-dynamic-worksheet-reference-8

ヒント: 参照されているワークブックを閉じた後に戻り値がエラーにならないようにするには、数式に直接ワークブック名、ワークシート名、セルアドレスを指定できます。次のようにします:
=INDIRECT('[SalesFile.xlxs]Total sales'!E3,"")


関連する関数

INDIRECT関数
Microsoft ExcelのINDIRECT関数は、テキスト文字列を有効な参照に変換します。


最高のオフィス生産性ツール

Kutools for Excel - 群衆から一歩抜け出すためのお手伝い

🤖 KUTOOLS AI アシスタント: 次の基盤でデータ分析を革新: スマート実行   |  コード生成  |  カスタム数式を作成  |  データを分析しチャートを生成  |  Kutools 機能を呼び出し
人気機能: 重複を検索、ハイライト、または特定  |  空白行を削除  |  データを失うことなく列やセルを結合  |  数式を使わずに丸める ...
スーパーVLookup: 複数条件 | 複数値 | 複数シート間 | ファジーマッチ...
高度なドロップダウンリスト: 簡単ドロップダウンリスト  |  依存ドロップダウンリスト  |  複数選択ドロップダウンリスト...
列マネージャー: 特定の数の列を追加 |  列を移動 |  非表示列の可視性ステータスを切り替え 列を比較して同じおよび異なるセルを選択 ...
注目機能: グリッドフォーカス |  デザインビュー |  強化された数式バー |  ワークブックとシートマネージャー | リソースライブラリ (オートテキスト) |  日付ピッカー |  ワークシートを統合 |  セルの暗号化/復号化 |  リストによるメール送信 |  スーパーフィルター |  特殊フィルタ(太字、斜体、取り消し線のフィルタリング...) ...
上位15のツールセット12個の テキストツールテキストの追加特定の文字を削除 ...) |  50以上の チャート タイプガントチャート ...) |  40以上の実用的な 数式誕生日に基づいて年齢を計算 ...) |  19個の 挿入ツールQRコードの挿入パスからの画像挿入 ...) |  12個の 変換ツール単語に変換する通貨変換 ...) |  7つの マージ&分割ツール高度な行のマージExcelセルの分割 ...) |  ... など
お好みの言語でKutoolsを使用できます。英語、スペイン語、ドイツ語、フランス語、中国語、その他の40以上の言語に対応!

Kutools for Excelは300以上の機能を誇り、必要なものがクリック一つで利用可能です...


Office Tab - Microsoft Office(Excel含む)でタブ形式の読み書きを可能に

  • 数十の開いている文書間を1秒で切り替え!
  • 毎日数百回のマウスクリックを減らし、マウス疲れとはおさらば!
  • 複数の文書を閲覧・編集する際の作業効率を50%向上します。
  • Chrome、Edge、Firefoxのように、Office(Excel含む)に効率的なタブをもたらします。