今回のテーマは、エクセルVLOOKUP関数とMATCH関数の組合せの応用。応用編では、複数の列と行を転記する入力方法の解説です。MATCH関数でVLOOKUP関数の引数を自動検索していちいち列番号を入力する面倒から解放されます。ところで、式の入力は一度で済ませたい。そのためにはちょっとしたテクニックが必要となります。入力方法を順追ってご紹介、考えるよりも入力してみて理解が深まると思います。このハードルを越えてこそのスキルアップです。

VLOOKUP関数とMATCH関数の複数列のコピー

組合せ式を入力しコピーをしたもののエラーになってしまう問題。

用意したデータ

健診日程の社員IDを検索して、社員名簿から必要項目の情報を自動転記で日程表を作成しました。

 

自動転記は、

  • VLOOKUP関数とMATCH関数の組合せ(入れ子)で作成。

 

 

ポイントは、

  • MATCH関数で列番号を自動検索!

 

いちいち列番号を指定することなく、効率的でとても便利です。

なぜかエラーになる

作成にあたってのポイントは、

  • D12セルに入力した式だけ、後はコピーで完成させること。

 

ところが、

  • エラー表示になってしまう。

 

原因の多くは、

  • 絶対参照複合参照の指定の仕方が正しくない。

 

次に、1度の入力した式のコピーで表を完成させる手順を確認しましょう。

VLOOKUP関数を入力する

まずは、VLOOKUP関数を入力します。

VLOOKUP関数の関数名を入力する

VLOOKUP関数の構成の関数名は、

  • VLOOKUP(検索値,範囲,列番号,検索方法)

 

D12セルに「=VL」と入力する。(半角でも同じ)

VLではじまる関数名がピックアップ表示されます。

 

「VLOOKUP」を選択したところで、

  • Tab」キーを押す。

 

VLOOKUP関数の関数名と「」が入力されます。

  • =VLOOKUP(

VLOOKUP関数の検索値を入力する

次に、VLOOKUP関数の検索値を入力します。

 

VLOOKUP関数の検索値は、

  • VLOOKUP(検索値,範囲,列番号,検索方法)

 

検索値は健診日程の「社員ID」です。

 

C12」と入力する、または、C12セルをクリックする。

  • =VLOOKUP(C12

 

この後数式をE・F列にコピーしてもC列は固定。

13・14行にコピーすると自動調整になる相対参照の複合参照にする必要があります。

 

つまり、

  • コピーの際、列は相対参照(→×)、行は相対参照(↓〇)。

 

絶対参照、相対参照、複合参照の詳細はこちら↓↓↓

【Excel数式の入力】5分で分かる!エクセルの相対参照と絶対参照の使い分け

 

複合参照は、「F4」キーを3回押して「$C12」にする。(C12セルにカーソルがあること)

,」(カンマ)を入力する。

  • =VLOOKUP($C12,

VLOOKUP関数の範囲を指定する

次に、VLOOKUP関数の範囲を入力します。

 

VLOOKUP関数の構成の範囲は、

  • VLOOKUP(検索値,範囲,列番号,検索方法)

 

範囲は社員名簿の表全体になります。

 

セミナー表のB3セルからH8セルをドラッグして範囲指定する。

指定した範囲が入力されます。

  • =VLOOKUP(B4,F3:I6

 

ここでの注意点、

  • 範囲は固定する必要があるので絶対参照にする。

 

「F3:I6」を範囲選択し「F4キーを1回押して絶対参照にします。

  • =VLOOKUP(B4,$F$3:$I$6

 

,」(カンマ)を入力する。

  • =VLOOKUP(B4,$F$3:$I$6,

VLOOKUP関数の列番号を指定する

次は列番号です。

VLOOKUP関数の構成の列番号は、

  • VLOOKUP(検索値,範囲,列番号,検索方法)

 

ここでは、社員名簿から指名を、左から何列目か列番号の指定で転記します。

元になる社員名簿の項目「氏名」は左から2列目

 

2,」と列番号を入力します。(列番号は後にをMATCH関数に書き換えます)

  • =VLOOKUP(B4,$F$3:$I$6,2,

VLOOKUP関数の検索方法を指定する

検索方法を指定します。

  • VLOOKUP(検索値,範囲,列番号,検索方法

 

ここでは、完全に一致する「FALSE」を入力します。(「FALSE」は数字の「0」でも可)

「Enter」キーを押して確定します。(自動的に「」がつきます)

  • =VLOOKUP(B4,$F$3:$I$6,2,FALSE)

ドラッグしてコピーする

社員名簿の氏名が転記されたことを確認します。

 

入力した関数式をコピーします。

  • 関数式が入力されているD4セルの右下の「」ハンドルマークをドラッグする。

社員名簿から氏名の転記を確認

健診日程の「社員ID」を検索して、社員名簿の範囲から左2列目のセミナー名が転記されました。

MATCH関数を組み入れる

指定した列番号をMATCH関数に書き換え、列の指定を自動検索にします。

MATCH関数の関数名を入力する

MATCH関数の構成は、

  • =MATCH(検索値,検索範囲,照合の種類)

 

VLOOKUP関数を入力した「D12」セルの列番号「2」を削除し「MA」と入力。

  • =VLOOKUP($C12,$B$3:$H$8,MA,FALSE)

 

MATCH」関数名がピックアップ表示される。

ここで、

  • Tab」キーを押す。

 

関数名が「(」(カッコ)付きで入力される。(直接入力しても構いません)

  • =VLOOKUP($C12,$B$3:$H$8,MATCH(,FALSE)

MATCH関数の検索値を指定する

次の引数、検索値を入力します。

  • =MATCH(索値,検索範囲,照合の種類)

 

健診日程の各項目(氏名、性別、年齢)が元表の社員名簿の項目(B3,H3)の左から何列目かです。

 

つまり、D11の「氏名」が検索値。

D11」と入力するか「D11」セルをクリックする。

  • =VLOOKUP($C12,$B$3:$H$8,MATCH(D11,FALSE)

 

D11セルはこの後数式をコピーしても列は相対参照、行は絶対参照の複合参照にする必要があります。

  • コピーの際、列は相対参照(→〇)、行は相対参照(↓×)。

 

F4キーを2押して複合参照「D$11」にする。

,」(カンマ)を入力する。

  • =VLOOKUP($C12,$B$3:$H$8,MATCH(D$11,,FALSE)

MATCH関数の検索範囲を指定する

次の引数は検索範囲です。

  • =MATCH(検索値,検索範囲,照合の種類)

 

検索範囲は社員名簿の項目になります。

範囲は「B3:H3」です。

  • =VLOOKUP($C12,$B$3:$H$8,MATCH(D$11,B3;H3,FALSE)

 

ここでの注意点、

  • 範囲は固定する必要があるので絶対参照にする。

 

相対参照、絶対参照の詳細についてはこちら↓↓↓

【Excel数式の入力】5分で分かる!エクセルの相対参照と絶対参照の使い分け

 

「B3:H3」を範囲指定、「F4」キーを1回押して絶対参照にします。

,」(カンマ)を入力する。

  • =VLOOKUP($C12,$B$3:$H$8,MATCH(D$11,$B$3;$H$3,,FALSE)

MATCH関数の照合の種類を指定する

次の引数は、照合の種類です。

  • =MATCH(検索値,検索範囲,照合の種類

 

ここの照合は「完全一致」、完全の一致は「0」です。

」を入力し「」(カッコ閉じ)を入力する。

  • =VLOOKUP($C12,$B$3:$H$8,MATCH(D$11,$B$3;$H$3,0),FALSE)

式のコピー

ひとつのセルに入力した関数式を列・行にコピーします。

列をコピー

式を入力したD12セルの右下にある「■」(ハンドル)をドラッグする。

又は、ハンドルをダブルクリックする。

 

正しくコピーされたことを確認します。

行をコピー

列にコピーした式を行にコピーし表全体の計算を完成させます。

 

列をドラッグ。

右下の「■」(ハンドル)をドラッグ。

 

転記が完成しました。

 

いちいち列番号を指定することなく、ひとつの式の入力のコピーで転記を実現することができました。

最後の仕上げはエラーは空白表示にする

エラーは空白表示に設定しておきましょう。

エラーになるを解消したい

式が入力された表で検索値が空白になるとエラー表示になってしまいます。

IFERROR関数の組合せ

入力した関数式をIFERROR関数で組合せます。

 

IFERROR関数の構成は、

  • IFFERROR(値,エラーの場合の値)

 

エラーの場合の値は「空白」にします。

「空白」は「””」(ダブルクォーテーション)を使います。

 

D12セルを選択。

「F2」キーを押してIFERROR関数を入力し「Enter」キーを押して確定します。

  • =IFERROR(VLOOKUP($C12,$B$3:$H$8,MATCH(D$11,$B$3:$H$3,0),FALSE),“”)

エラーは空白表示に

最後の仕上げでいつでも見やすい表の完成です。

VLOOKUP関数関連記事

本ブログのVLOOKUP関数関連記事はこちら。↓↓↓

今回のまとめ

というわけで、今回は以上です。

 

今回のテーマは、エクセルVLOOKUP関数とMATCH関数の組合せの応用。

複数の列と行を転記する入力方法の解説です。

 

ところで、

  • 式の入力は一度で済ませたい。(あとはコピーするだけ)

 

そのためにはちょっとしたテクニックが必要となります。

テクニックとは絶対参照と複合参照の使い分け。

 

VLOOKUP関数とMATCH関数との組合せ方法を、順に入力しながらご紹介の中。

絶対参照と複合参照の指定方法もあわせて解説しました。

 

考えるよりも入力してこそ理解が深まってこそエクセルのスキルアップになるはずです。

 

いかがでしたでしょうか?

最後まで読んでくださりありがとうございます。

少しでもヒントになればうれしく思います。