教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows

 

Excel  ≫ 入力規則

Excel: INDIRECT関数の使い方

 

 

 

 

 


 

 

 


 

 

 

 

INDIRECT関数は指定した文字が表す参照を返します。参照セルを文字列で指定できるので便利です。文字列は””で囲って指定します。(関数,セル番地,演算子等は囲まない)

  • INDIRECT(参照文字列,参照形式)

参照文字列には【セル】【名前】など、セル参照を表す文字列を指定します。参照先を文字列で指定することで切り替えを可能にします。


例1:A1に「Cat」と入力されているとします。=A1とすると「Cat」という値が返りますが、=Indirect(A1)の場合は「Cat」が表すセル参照が返ります。つまり「Cat」という名前が付けられたセル範囲を返します。例えばユーザーがA1のドロップダウンリストから「Cat」「Dog」などを選択することで、数式で利用する参照先を切り替えることができます。

 

例2:A1に「G5」と入力されているとします。=A1とすると「G5」という文字列が返りますが、=Indirect(A1)とするとA1が表すセル参照であるG5に入力されている値が返ります。

 

例3:A1に「5」、A5に「neko」と入力されています。 =INDIRECT("A"&1) → 5が返ります。 =INDIRECT("A"&A1) → A5を参照するのでnekoが返ります。

★指定された文字列が参照する先を返す


■ INDIRECT関数の使い方サンプル

例えば下図のように在住が【区内】と【区外】で料金が異なるとします。そのため、Vlookup関数で金額を表示したい場合【区内】か【区外】で参照する表が異なります。

 

IF関数とVlookup関数とネストして「もし在住が「区内」なら…」としてもいいのですが、これは手間がかかりますし対象の表が多い場合はなおさら面倒です。このような場合にINDIRECT関数を使うと、参照する表を【名前】で指定できるため、自動的に切り替えることができます。

 

  1. 【区内】表、【区外】表に名前を付ける。名前は「区内」「区外」とする。(選択した値によって参照先を切り替えるため)

    ◎ 名前を付けるには … 区内の表(A1~B4)を選択し、名前ボックスに「区内」と入力してEnterキー

     

  2. 同様に区外表を選択し、名前ボックスに「区外」と入力してEnterキー

  3. 在住区分を選択するためのドロップダウンリストを入力規則で作成する
    G列を選択し「データ」タブ−「データの入力規則」をクリック

  4. 「入力値の種類」を「リスト」として「元の値」を「区内,区外」とする

  5. G列にドロップダウンリストが設定される

  6. 同様にH列に「小学生、中学生、大人」のリストを設定する

  7. 金額を出したいのでI列(I1)に次の式を設定する
    = VLOOKUP(H2,INDIRECT(G2),2,0)

▼▼参照元の範囲をIndirect(G2)とすることで、区内と区外の表を切り替えることができます▼

 

 

教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows