皆さん、こんにちは。Excelを使っていて、「VLOOKUP関数で左側のデータを取得したいけど、どうすればいいの?」と悩んだことはありませんか?実は、VLOOKUP関数は基本的に右方向のデータしか取得できないんです。でも、ご安心ください。今回は、そんなお悩みを解決する方法をわかりやすくお伝えします。
VLOOKUP関数の基本的な制限
まず、VLOOKUP関数の基本をおさらいしましょう。VLOOKUP関数は、指定した値を範囲内の左端の列から検索し、その右側にある指定した列の値を返す関数です。つまり、検索する列より左側のデータを取得することはできないのです。
このサイトをチップで応援
左方向のデータを取得する方法
では、どうやって左側のデータを取得すればいいのでしょうか?主に以下の3つの方法があります。
1. INDEX関数とMATCH関数を組み合わせる方法
この方法は、Excelの全てのバージョンで使用可能です。MATCH関数で検索値の位置を特定し、その位置をINDEX関数で指定して値を取得します。具体的な手順は以下の通りです。
- MATCH関数で検索値の位置を取得します。
- INDEX関数で取得した位置を基に、左側の列の値を取得します。
例えば、以下のようなデータがあるとします。
| 商品ID | 商品名 |
|---|---|
| 001 | りんご |
| 002 | みかん |
| 003 | ぶどう |
この場合、商品名から商品IDを取得するには、以下のような数式を使用します。
=INDEX(A4, MATCH("みかん", B2:B4, 0))
この数式では、MATCH関数で「みかん」がB列のどの行にあるかを特定し、その行番号をINDEX関数でA列から取得しています。
2. CHOOSE関数を使用する方法
CHOOSE関数を使って、列の順序を入れ替えることで、VLOOKUP関数で左側のデータを取得することが可能です。具体的には、以下のようにします。
=VLOOKUP(検索値, CHOOSE({1,2}, 取得したい列, 検索する列), 2, FALSE)
例えば、先ほどのデータで商品名から商品IDを取得するには、以下のようにします。
=VLOOKUP("みかん", CHOOSE({1,2}, B2:B4, A4), 2, FALSE)
この数式では、CHOOSE関数でB列とA列の順序を入れ替え、VLOOKUP関数で「みかん」を検索し、対応する商品IDを取得しています。
3. XLOOKUP関数を使用する方法
Excelの新しいバージョン(Excel 365やExcel 2021)では、XLOOKUP関数を使用することで、左方向のデータ取得が簡単に行えます。XLOOKUP関数は、検索範囲と結果範囲を個別に指定できるため、列の位置に関係なくデータを取得できます。
例えば、先ほどのデータで商品名から商品IDを取得するには、以下のようにします。
=XLOOKUP("みかん", B2:B4, A4)
この数式では、B列から「みかん」を検索し、対応するA列の値(商品ID)を取得しています。
よくある質問や疑問
VLOOKUP関数で左側のデータを取得することはできますか?
いいえ、VLOOKUP関数は右方向のデータしか取得できません。しかし、INDEX関数とMATCH関数の組み合わせや、CHOOSE関数、XLOOKUP関数を使用することで、左側のデータを取得することが可能です。
XLOOKUP関数は全てのExcelバージョンで使用できますか?
いいえ、XLOOKUP関数はExcel 365やExcel 2021などの新しいバージョンでのみ使用可能です。古いバージョンのExcelをご利用の場合は、INDEX関数とMATCH関数の組み合わせや、CHOOSE関数を使用する方法をご検討ください。
まとめ
今回は、VLOOKUP関数で左側のデータを取得する方法についてお伝えしました。VLOOKUP関数の制限を理解し、他の関数を組み合わせることで、柔軟にデータを取得することが可能です。ぜひ、これらの方法を試してみてください。他にも疑問やお悩み事があればお気軽にLINEからお声掛けください。



コメント