大体でIT
大体でIT
ExcelのINDIRECT関数の使い方について、ご紹介します。INDIRECT関数に、参照するセルの文字列を入力することで、セルを参照することができます。INDIRECT関数と他の関数を組み合わせることで、最終行のセルを取得したり、表の値を検索したりすることができるので、便利です。
この記事では、INDIRECT関数の使い方について、ご紹介します。
INDIRECT関数は、参照したいセルの「文字列」を入力することで、セルを参照することができます。
文字列は、セルの値からも組み合わせて作ることができるので、応用が利きます。
他のExcel関数と組み合わせることで、最終行を取得したり、値の検索をしたりすることができます。
では、INDIRECT関数の使い方について、解説していきます。
Excel関数で、「INDIRECT関数」の使い方について、解説していきます。
INDIRECT関数には、次のように文字列を入力して、セルを参照することができます。
では、INDIRECT関数の使い方について、具体的に解説していきます。
INDIRECT関数には、文字列を入力するとそのセルを参照することができます。
セルを参照するときは、次のように数式「=」でセルを参照しますよね。
数式でセルを参照
この「A3」を「INDIRECT関数」の中に入れると、そのセルを参照することができます。
INDIRECT関数でセルを参照
セルには、「=INDIRECT("A3")」と入力しています。
INDIRECT関数を使うポイントは、文字列を入力するところです。
つまり、次のように「"A" & "3"」と入力しても、セルA3を参照することができます。
文字列を&で結合する
セルに「=INDIRECT("A" & "3")」と入力しても、セルA3を参照することができます。
これだけでは、まだINDIRECT関数は、使いづらいです。
セルの値から文字列を組み立てる
次のように、セルの値から参照する文字列を組み立てると、便利になります。
セルに「=INDIRECT(C2 & C3)」と入力しています。
セルに入力する値を変えると、簡単に参照するセルを変更することができます。
こんな感じで、「INDIRECT関数」を使うと、文字列を入力すると、自由にセルを参照することができます。
INDIRECT関数を使うと、「名前」を参照することもできます。
名前を付ける
数式「=」を使って、名前を参照する場合は、こんな感じです。
数式で名前を参照
これを、「INDIRECT関数」を使って、「名前」を参照すると、こんな感じになります。
INDIRECT関数で名前を参照
セルには、「=INDIRECT("名前")」と入力しています。
セルの値を使って名前を参照
このままでは、使いづらいので、セルの値から、「名前」を参照してみます。
「名前」をセルに入力して、その「名前」を「INDIRECT関数」で参照します。
これで、セルに入力された値から、「名前」のセルを参照することができます。
INDIRECT関数で、「名前」が取得できました。
セルの値を変更すれば、参照するセルの値を変更することができます。
INDIRECT関数を使うと、別シートのセルを参照することも簡単です。
別シートを作成
数式を使って別シートを参照
「=Sheet2!A1」という感じで、別シートのセルを参照できます。
この「Shee2!A1」を「INDIRECT関数」に入力します。
INDIRECT関数で別シートを参照
INDIRECT関数で、別シートのセルを参照できました。
セルには、「=INDIRECT("Sheet2!A1")」と入力しています。
この「"Sheet2!A1"」の部分をセルから取得するようにすると、簡単に、参照する先を変更することができます。
INDIRECT関数を使うと、別ブックのセルを参照することも簡単です。
次のように「TEST.xlsx」という別ブックを用意しました。
別ブックを作成
数式で別ブックを参照
「=[TEST.xlsx]Sheet1!$A$1」という感じで、別シートのセルを参照できます。
この「[TEST.xlsx]Sheet1!$A$1」を「INDIRECT関数」に入力します。
INDIRECT関数で別ブックを参照
INDIRECT関数で、別ブックのセルを参照できました。
セルには、「=INDIRECT("[TEST.xlsx]Sheet1!$A$1")」と入力しています。
この「"[TEST.xlsx]Sheet1!$A$1"」の部分をセルから取得するようにすると、簡単に、参照する先を変更することができます。
ただし、注意で、INDIRECT関数を使って、別ブックを参照する際は、「別ブックを開いておく」必要があります。
こんな感じで、「INDIRECT関数」に参照する文字列を入力すると、セルを参照することができます。
参照する文字列は、セルの値を使って組み合わせることもできるので、自由にセルを参照することができます。
INDIRECT関数は、他の関数と組み合わせるとさらに便利になります。
参照する表を切り替える(VLOOKUPとINDIRECT)
INDIRECT関数と、VLOOKUP関数を使って、2つの表を切り替えてセルを検索する、というのをやってみます。
2つの表を用意
2つの表に名前を付ける
「C」を検索する
VLOOKUP関数と、「表①」の中から「C」を検索します。
「表①」を検索する
VLOOKUP関数の範囲には、「表①」を入力します。
「表①」を入力するには、「INDIRECT("表①")」と入力するので、セルの値を使って、「INDIRECT(D2)」と入力しています。
2列目を検索で完全一致
あとは、2列目の完全一致のFalseを入力して、VLOOKUP関数の入力を完成させます。
VLOOKUPとINDIRECTで検索した結果
「表①」のCの値で「300」を検索することができました。
表②の表を検索
「表②」のCの値で「3000」を検索することができました。
こんな感じで、INDIRECT関数を使うと、VLOOKUP関数で検索する「表を切り替える」ことができます。
次は、INDIRECT関数とMATCH関数を使って、表の中から値を検索する、というのをやってみます。
表を用意
「う」の行数を検索したいので、「う」を入力しておきます。
検索値を入力
MATCH関数で、行番号を検索
「う」の行を検索したいので、「MATCH関数」を使って、行を検索します。
「う」は3行目にあるので、結果は「3」となります。
INDIRECT関数で、A列の3行目を取得
この「3」を使って、INDIRECT関数で、「A列」の「3行目」を参照します。
入力は、「=INDIRECT("A" & D2)」というように入力します。
「う」の検索値から、「C」を取得した、という感じです。
最終行のセルを参照(COUNTAとINDIRECT)
INDIRECT関数と、COUNTA関数を組み合わせて、最終行のセルを参照する、というのをやってみます。
セルに値を入力
COUNTA関数でセルの個数をカウント
「COUNTA関数」を使ってセルに入力されている個数をカウントします。
5個のセルに文字が入力されているので、結果は「5」となります。
INDIRECT関数で最終行を取得
この「5」を使って、INDIRECT関数で最終行のセルを取得します。
セルには、「=INDIRECT("A" & C1)」と入力しています。
行と列を指定してセルを参照(ADDRESSとINDIRECT)
次は、行と列の番号を指定して、セルを参照するというのをINDIRECT関数とADRESS関数でやってみます。
表を用意
3行2列を参照
セルには、「=INDIRECT(ADDRESS(D1,D2))」と入力しています。
指定した行までの合計値を計算(SUMとINDIRECT)
指定した行までの合計値を計算するというのを、INDIRECT関数とSUM関数でやってみます。
表を用意
1行目から「4」行目までの合計値を計算してみます。
指定行までの合計値を計算
セルには、「=SUM(INDIRECT("A1:A" & C1))」と入力しています。
この記事では、INDIRECT関数の使い方について、ご紹介しました。
INDIRECT関数には、参照したいセルの「文字列」を入力することで、セルを参照することができます。
文字列は、セルの値からも組み合わせて作ることができるので、応用が利きます。
他のExcel関数と組み合わせることで、最終行を取得したり、値の検索をしたりすることができます。
参考になればと思います。最後までご覧くださいまして、ありがとうございました。