エクセルで、N対N(多対多)のマッチングのやり方について

【この記事の所要時間 : 約 2 分

エクセルにて1対N(1対多)のマッチングを行う場合は、VLOOKUP関数をよく使うが、エクセルで、N対N(多対多)のマッチングの場合は、どうすればいいのだろうか?
答えは、MATCH関数である。
MATCH関数は、「探したいデータ」と「範囲」を指定すると、指定した範囲の中で、「何番目のセルにあるか」を表示してくれる関数である。

MATCH(検査値, 検査範囲, 照合の型)

 ・検査値(必須):検索する値、またはセル参照を指定
 ・検査範囲(必須):検索するセルの範囲を指定
 ・照合の型(省略可):0 の場合検査値に一致する値のみが検索の対象
N対N(多対多)を、分かりやすいように、A列(N行)対B列(M行)とし、A列とB列でマッチングをしてA列の中からB列にもあるものをピックアップする場合を考える。やり方の手順は以下の通りである。
 1.A列(N行)全体を範囲指定し、条件付き書式を指定して、数式を使用して、書式設定するセルを決定する
 2.数式には、MATCH関数を設定し、1対M(1対多)の形をとる
   →(MATCH関数内の引数である検査範囲にはB列(M行)、つまりM(多)の部分を設定する)
 3.マッチしたら文字の色を変えたり、背景色を変えるなどの設定をする
上記ようにすると、A列とB列でマッチングをしてA列の中からB列にあるものがあれば、3で指定したように文字の色が変わったり、背景色が変わったりする。
注意点としては、MATCH関数内の検査値には、A列(N行)の一番上のカラムを相対参照として指定することである。カラム番号を自分でA1のように入力せずに、クリックで選択すると、$A$1というように絶対参照になってしまうので、注意が必要である。
以下、参考までに。
条件付き書式(数式編)
オートフィルと相対参照
絶対参照でセルを固定!
重複データの削除
Excel関数は組み合わせて使う 検索列の左側を抽出できないVLOOKUP関数の弱点を、INDEX関数、MATCH関数で克服します

たった1日で即戦力になるExcelの教科書
吉田 拳
技術評論社
売り上げランキング: 516
スポンサーリンク
レクタングル(大)広告
  • このエントリーをはてなブックマークに追加
スポンサーリンク
レクタングル(大)広告

コメントをどうぞ

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です