【動画付き #24】VLOOKUP関数の検索条件に重複が発生したときはどうする?COUNTIF関数と組み合わせる方法を紹介

Excel#24アイキャッチ画像
この記事を読んでわかること
  • VLOOKUP関数とCOUNTIF関数を組み合わせる手順
  • COUNTIF関数を用いて重複データをナンバリングする方法
  • ナンバリングするとき、COUNTIF関数の開始セルは絶対参照にするが、終了セルは相対参照にする理由

VLOOKUP関数は、検索条件に一致したデータを指定範囲の中から検索する関数であり、ビジネスの現場では頻出の便利な関数です。

しかし、VLOOKUP関数には「検索条件に一致するセルが複数該当する場合は、一致するセルの中で一番上にあるセルを参照してしまう」という制限があり、重複するデータを扱うことができません。

今回の記事では、VLOOKUP関数での検索条件が複数あるときの問題を解決するために、COUNTIF関数を使って条件に一致する複数の検索結果を表示する方法をご紹介します。

VLOOKUP関数で扱えるデータがぐんと増えますので、ぜひ覚えて活用しましょう。

本記事はYouTube『ユースフル/ スキルの図書館』チャンネルより、以下の動画を記事にまとめたものです。動画だけではなく、テキストで復習したい方もいるはず。全38の記事と動画を組み合わせて、Excelの基本操作をマスターしていきましょう。

▼前回の記事はこちら

目次

重複データを含む表でVLOOKUP関数を使うとどうなる?

下記の右側の表は「従業員マスタ」で、左から「名前」「担当部署」を表しています。
そして、下記の右側の表はVLOOKUP関数を入力する表で、左から順に、「名前」のリストと「担当部署」の列が並んでいます。

Excel#24の1

たとえば、「F4」セルにVLOOKUP関数のみを活用して、「従業員マスタ」を参照した場合を見てみましょう。

「B3:C10」にある「従業員マスタ」を範囲に指定して、「F4」セルに「=VLOOKUP(E4,$B$3:$C$10,2,0)」と入力します。

Excel#24の2

このとき、重複する検索結果を持つセルは、一致するセルの中で一番上にあるセルを参照してしまうという問題が生じます。

そのため、下記のように「従業員マスタ」には「山田」という名前が2人もいるため、「E4」セルの「名前」リストからどの「山田」を選択しても、「F4」セルには一番上のセルにいる「B6」セルの「山田」が担当している「営業第1部」とのみ表示されてしまいます。

Excel#24の3

下記のように「従業員マスタ」の「名前」をナンバリングすると、この問題を解決できます。

Excel#24の4

しかし、上記のように重複データにひとつずつナンバリングしていくことは面倒なので、COUNTIF関数を活用します。

解決策:VLOOKUP関数とCOUNTIF関数を組み合わせる

手順①:新しく主キーをつくる

下記のような表を作成すると、同じ名前でも「ID」が異なるので、名前を分けることができます。このとき、「B4」セルのIDは「=C4&D4」とそれぞれの「名前」と「作業列」と結びついています。

Excel#24の5

手順②:COUNTIF関数を活用してナンバリング

手作業で入力した「作業列」のナンバリングをCOUNTIF関数を用いて作成する方法を見ていきましょう。

COUNTIF関数を活用してナンバリングする手順
  1. 「D4」セルに「=COUNTIF($C$4:C4,C4)」と入力する
Excel#24の6
1.「D4」セルに「=COUNTIF($C$4:C4,C4)」と入力する

これで下記のように名前をナンバリングすることができます。

Excel#24の7

ここでのポイントは下記のように「=COUNTIF($C$4:C4,C4)」と、開始セルは「$C$4」と絶対参照にするが、終了セルは「C4」と相対参照にするということです。

Excel#24の8

こうすることで、下記のようにコピー先のセルに応じて、「範囲」(青く囲われている部分)を拡張することができます。

Excel#24の9
※「D6」セルでは、「C4:C6 」までがCOUNTIF関数の範囲になっている
Excel#24の10
※「D8」セルでは、「C4:C8 」までがCOUNTIF関数の範囲になっている

手順③:VLOOKUPとCOUNTIF関数を組み合わせる

これまでに下記のような表が完成しています。

Excel#24の11

VLOOKUP関数を活用して、重複データを含む表を参照する手順を見ていきましょう。

手順
  1. 「H4」セルに「=VLOOKUP(G4,$B$3:$E$10,4,0)」と入力する
Excel#24の12
1.「H4」セルに「=VLOOKUP(G4,$B$3:$E$10,4,0)」と入力する

これで下記のように複数データがあっても、VLOOKUP関数で適切なデータを参照することができます。

Excel#24の13

その他にもVLOOKUP関数をINDIRECT関数と使用する方法はこちらをご覧ください

また明日から使えるExcel技をもっと知りたい、Excelを動画で学びたいという方はユースフルの公式LINEを追加してみてください。LINEの友達限定でExcel講義動画480分を無料プレゼント中です!ぜひ追加して受け取ってみてください!

まとめとおすすめ講座の紹介

今回のポイントは以下の3点です。

  • VLOOKUP関数は重複データがあるとき、一致するセルの中で一番上にあるセルを参照してしまう
  • COUNTIF関数を用いて重複データをナンバリングすることで、同じデータを分けることができる
  • ナンバリングするとき、COUNTIF関数の開始セルは絶対参照にするが、終了セルは相対参照にする

これら3つのポイントを抑えて、VLOOKUP関数で重複データを扱えるようになりましょう。

次回は、INDEX関数とMATCH関数についてご紹介します。ぜひこちらもご覧ください。

ここまで読んで「Excelをもっと学びたい」「実務で活かせるようになりたい」と思った方におすすめなのが、ユースフルの提供するオンライン講座の「ExcelPro」と「MOS Excel対策講座」です。ExcelProは40時間以上の実務直結の豊富な講義動画に演習問題とその解説動画が付いています。インプットのみならず手を動かしてアウトプットできるので、即戦力スキルを手に入れることができます!

また、ExcelProの動画コンテンツは毎年新機能やバージョンアップの内容を反映してアップデートされます。一度購入すれば、アップデート内容を含めた動画コンテンツが永年見放題です。

ぜひ圧倒的なコスパを実現し、Excel実務の技がオールインワンで手に入るExcelProをチェックしてみてください!

口コミが気になる方は下記の記事をご一読ください。実際のExcelProの受講者の声から口コミや評判を紹介しています。

またユースフルではMicrosoft MVPの監修のもと、MOS試験(スペシャリスト・エキスパート)の対策講座を提供しています。

MOS Excel対策講座は無料体験ができます。最短2週間で効率よくMOS Excel合格を目指せる講座を、動画内容はもちろん、動画内で使われているファイルのダウンロードや、模擬試験対策まで無料で体験することができます。無料体験していただいた方だけに、MOS Excel対策講座有料版がお得に購入できる割引もご用意していますので、ぜひお試しください。

こちらの人気記事にも注目!

ユースフル編集部ではExcelやMOS関連の情報はもちろん、AccessなどMicrosoftツールの使い方も解説しています。こちらの人気記事もぜひご覧ください!

気に入ったらシェア!
  • URLをコピーしました!
目次