VLOOKUPで複数条件、複数の列を抜き出す方法【Excel初心者~中級者向け】

VLOOKUPで複数条件、複数の列を抜き出す方法【Excel初心者~中級者向け】

 

Excelで表から情報を抽出する時に便利な VLOOKUP関数
しかし、こんな悩みはありませんか?

✅「2つ以上の条件で検索したい」
✅「1回の検索で複数列のデータを取り出したい」
✅「VLOOKUPだと左からしか検索できないのが不便…」

実はひと工夫することで 複数条件 & 複数列の抽出も可能です!
この記事では、初心者にも分かりやすく手順と実例を紹介します。


✅VLOOKUPの基本おさらい

=VLOOKUP(検索値, 範囲, 列番号, 検索方法)
  • 左端列から検索

  • 一致した行から指定列の値を返す

➡ そのままだと「複数条件」には対応できません。


✅複数条件でVLOOKUPする方法

📌対策:条件を結合して疑似的に1つのキーを作る

例)
顧客名と商品名を条件に、金額を検索したいケース

A列 B列 C列
顧客 商品 金額
佐藤 りんご 100
佐藤 みかん 150
鈴木 りんご 120

 

🔧検索用のキーを作る

D列に以下の式を作る:

=A2 & "-" & B2

するとこうなる👇

D列
佐藤-りんご
佐藤-みかん
鈴木-りんご

🔍検索側でも結合して検索!

=VLOOKUP(F2 & "-" & G2, $D$2:$C$4, 3, FALSE)
  • F2:顧客名

  • G2:商品名

  • D~C列範囲を指定(左端がキー列になるように設定)

これで 複数条件検索が実現!


✅複数列をまとめて取り出す方法

VLOOKUPは 1列しか返せない ため、複数列を取りたい場合は…

📌方法①:列番号を変えて複数のVLOOKUP

=VLOOKUP(F2 & "-" & G2, $D$2:$E$4, 3, FALSE) ←商品
=VLOOKUP(F2 & "-" & G2, $D$2:$F$4, 4, FALSE) ←金額

少し手間だけど実用的。


📌方法②:INDEX + MATCHでまとめて抽出(応用)

=INDEX($A$2:$C$4, MATCH(F2 & "-" & G2, $D$2:$D$4, 0), 列番号)

こちらは柔軟性が高く、
左方向検索列追加しても壊れにくい のでオススメです!


✅関数を使わない裏技:UNIQUE + FILTER(Microsoft 365/Excel2021)

最新Excelならこちらの方が超簡単👇

=FILTER(A2:C4, (A2:A4=F2) * (B2:B4=G2))

複数条件フィルター → 結果をそのまま抽出!
列数に上限なし!


📌まとめ

やりたいこと おすすめの方法
VLOOKUPで複数条件 条件結合(キー列作成)
複数列を取りたい INDEX+MATCH or FILTER
左側列を検索したい INDEX+MATCH一択
作業効率を上げたい Microsoft 365の新関数採用
タイトルとURLをコピーしました