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

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

Author: Siluvia Last Modified: 2025-05-23

複数のワークシートやワークブックに同じ形式のデータがあり、これらのワークシートやワークブックから別のシートにデータを動的に取得する必要があるとします。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関数は、テキスト文字列を有効な参照に変換します。


最高のOffice生産性ツール

Kutools for Excel - あなたを群衆から際立たせるツール

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

Kutools for Excelは300以上の機能を誇り、必要なものがワンクリックで手に入ります...


Office Tab - Microsoft Office(Excel含む)でのタブ形式の閲覧と編集を有効にする

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