PHP  エクセル10倍活用術              操作編

 ・「VLOOKUP」関数を利用する

 


操作の概要

 ここでは、 「VLOOKUP」という関数を利用して、他のシートの項目を表示させる方法を説明します。
 ここでは、下記ワンポイントにあるように、『クレームデータ表』に新規項目として、「事故内容」を自動表示させる方法です。
 その新規項目には、『事故区分内容表』を参照して、 「事故区分」と対応する「事故内容」を表示させます。ここでの例では、2つの表は別シートにあります。
 

  • この操作の概要イメージは、上図のようなものです。
  • 『クレームデータ』に「事故内容」という新規作成項目を作ります。
    その際に、『事故区分内容』表の「事故内容」の項目を自動的に参照して表示させる方法です。
  • 参照とする表は、同じシート内の表でも、別シートの表でも、別BOOKの表でも構いません。

    但し、同じシート内の表の場合、列が修復してなければ、下記操作(列の範囲指定)で良いですが、列が重複していた場合には、2段目の「範囲」の指定の際に、その参照表の範囲指定が必要です。この点はその項目の ワンポイント説明の所で再度記載しておきます。
  • (注)事前準備として、参照する表で、対応項目を並べ替えておく必要があります
    (ここでは、『事故区分内容』表で、「事故区分」を並べ替えておく必要があります)
     
  • よく利用する例として、商品コードしかない表に、商品名を追加表示させる時などに利用します。
    その場合の参照先表は「商品コード一覧表」などを利用します。商品コードを対応項目として、商品コード一覧表より、商品名を参照して表示させます。

操作の流れ

事前準備として、参照先の表の参照項目を並べ替えます

  1. 参照先の「事故区分内容」表の、対応項目である「事故区分」を並べ替えておきます。
    (昇順、降順は問いません)

下図のような『クレームデータ』表に新規列を挿入します

  1. C列の後ろに新規列を挿入します。

  2. その新規項目名は「事故内容」とします。

D2のセルに、関数の指定をします

  1. D2のセルをクリックします。

  2. メニューバーより、【挿入】→【関数】とクリックします。

関数の挿入で「VLOOKUP」を選択します

  1. 関数の挿入ダイアログにて、「VLOOKUP」関数を選択して、【OK】をクリックします。

    (「VLOOKUP関数」は、「検索/行列」のグループにありますので、それをクリックして、メニューより、「VLOOKUP」を選択します。
     ここでは、この方法の詳細操作説明は致しません 。詳細は「IF関数」の欄をご参照ください。)

 

「VLOOKUP」の指定画面になります

  1. 下図のような「関数の引数」ダイアログが表示されます。

    以降1項目づづ、説明して指定して行きます。

まず、「検索値」を指定します

  • 「検索値」とは、今からD2に表示させる項目は、同じシートの中のどこのセルを参考に見に行くのかを指定します。
    ここではC2の数字を参考として検索するので、C2を選びます。

  1. まず検索値の欄の  をクリックします。

  2. すると検索値の欄だけが小さくなり、浮動状態になります。

  3. 今指定したいC2のセルをクリックします。

  4. するとC2が入力されます。→【ENTER】キーを押します(または  をクリックします)。

  5. 元の関数の引数のダイアログに戻ります。 検索値が表示されています。これで検索値の欄の指定は終わりました。
     

次に、参照する「範囲」を指定します

  • 参照する範囲とは、ここでは参照先の「事故区分内容」シートの範囲です。
    このシートの中より、事故区分の番号と同じ番号の事故内容を新規項目に表示させたいという事です。

  1. 次に、範囲の欄をクリックします。そして、同じく範囲の欄の  をクリックします。

  2. すると範囲の欄だけ小さくなり、浮動状態になります。

  3. ここでは、別シートの「事故区分内容」を参照するので、「事故区分内容」のシートをクリックします。

  4. そして、今参照したい『A列とB列』を範囲指定します。

(注1) 今回の例ではたまたまA列とB列しかありませんでしたが、もっと複数列ある表の一部を参照する場合も当然あります。

 その場合に大切な事は、元の表の検索値のセルと同じ対応項目(ここでは「事故区分」が同じ項目で対応しています)が、一番最初の列と指定する事です。

 つまり、対応項目列から、表示させたい項目の列までを範囲指定します (下図参照)。



 (注2)上記操作15で、列を範囲指定していますが、これは別シートまた同じシートでも、列番号が重複していない場合の操作です。
 同じシート内の列が重複している表を参照する場合には、列の指定は出来ません。 最初のワンポイントでの説明のように、対応項目から始まる範囲を範囲指定して、指定します。

  1. すると下図のように指定したシート名と範囲指定したものが表示されます。→【ENTER】キーを押します (または  をクリックします)。
  2. 元の関数の引数のダイアログに戻ります。範囲の欄の指定が終わりました。

次に、参照する「列番号」を指定します

  参照する列番号とは、ここでは参照する範囲の「事故区分内容」の表示させたい項目は、指定した範囲の何番目に当たるかを数字で指定します。
 つまり、今「範囲」で指定した列の左から数えて(範囲指定した列より数えて)何番目の列 を表示させたいかを数字で指定する事です。
  1. 次の列番号の欄をクリックします。

  2. ここでは指定範囲の「2番目の列」が表示させたい内容なので、「2」と入力します。

  3. 列番号の欄の指定が終わりました。

最後に、「検索の型」を指定します

  検索の型は2つあります。「0=FALSE」「1=TRUE」です。

 「0」 は完全に一致した値を表示させます。
 「1」は近い値を表示させます。

 この関数の利用では、完全に一致した値を表示させたいので「0=FALSE」と指定します。

  1. 検索型の欄をクリックします。

  2. 「0」と入力します。

  3. これで、全ての指定は終了なので、【OK】をクリックします。

D2のセルに参照項目が表示されました

  1. 今D2のセルに指定したので、D2のセルに参照内容が表示されました。

  2. そのD2のセルをD列の以下のセルにコピーします。
    方法は、オートフィル機能を利用します。

    D2のセルの右下端にマウスポイントを持って行くと、黒十字のオートフィルの形にマウスポイントが変わります。→その状態でダブルクリックします

  3. これで、D列の必要範囲に全てコピーされ、参照内容が表示されました。
    (下段の図は、ダブルクリック直後の図です)