INDIRECT関数の使い方(スプレッドシート)|文字でセルやシートを指す
※写真はイメージです
書き方
=INDIRECT(セル参照の文字列)文字で書いたセル番地やシート名を、本当の参照に変えます。「B1に書いた月のシートを集計する」のように、参照先をセルで切り替えたいときに使います。
引数の意味
| 引数 | 入れるもの | 図の例 |
|---|---|---|
| セル参照の文字列 | セル番地やシート名を組み立てた文字 | B1&"!B2:B32" |
シート名に空白や記号があるとき
=SUM(INDIRECT("'"&B1&"'!B2:B32"))シート名を ' で囲むように組み立てます。「11月 売上」のように空白があるシート名でも動きます。
プルダウンを連動させる(大分類で小分類を変える)
小分類の一覧に、大分類と同じ名前を付けておきます(「データ」→「名前付き範囲」)。小分類のセルの入力規則で「範囲からのプルダウン」に =INDIRECT(A2) と書くと、A2で選んだ大分類の一覧が出ます。くわしくはプルダウンのページで。
うまくいかないとき
1#REF!「…は有効なセル/範囲の参照ではありません」
組み立てた文字が、シート名や番地として正しくありません。
直し方シート名の空白・全角半角を見直し、空白があるときは ' で囲みます。
使えるバージョン
Excelと同じ書き方で使えます。スプレッドシートで作ったものをExcelの形式でダウンロードしても、そのまま動きます。
よくある質問
INDIRECTとは?
文字で書いたセル番地やシート名を、本当の参照に変える関数です。
セルのシート名で集計を切り替えるには?
=SUM(INDIRECT(B1&"!B2:B32")) のように組み立てます。
別のファイルを参照できますか?
できません。IMPORTRANGEを使います。
一緒に覚えたい関数・操作
このページについて
操作の説明は、パソコンのブラウザで開いた日本語のGoogleスプレッドシートに合わせています。関数の働きはGoogleの公式ヘルプ(スプレッドシートの関数リスト)で確かめています。図はこのサイトで作ったもので、表の会社名・商品名・人名・URLは例です。このサイトはGoogleとは関係ありません。運営者情報