VlookUp関数を使う時、前提条件によって参照する表を変えたい場合があります。
指定する表に名前をつけておき、式内で条件に組み込めばいいのですが、Indirect関数を噛ませないとエラーになってしまいます。
複数の表を参照するVlookup関数
![ind1](https://sunagitsune.com/wp-content/uploads/2020/06/ind1.jpg)
とある劇団では、子供の入場料金を大幅に値下げすることにしました。
![ind2](https://sunagitsune.com/wp-content/uploads/2020/06/ind2.jpg)
入場者があるたびに席、大人/子供をプルダウンで入力していき、
![ind3](https://sunagitsune.com/wp-content/uploads/2020/06/ind3.jpg)
このふたつのデータから、自動で料金が算出されるようにしたいと思います。
![ind4](https://sunagitsune.com/wp-content/uploads/2020/06/ind4.jpg)
この場合、使用するのはVlookUp関数です。関数について詳しくはリンク先の記事で解説しています。
![ind5](https://sunagitsune.com/wp-content/uploads/2020/06/ind5.jpg)
参照先を指定する必要があるので、大人の表には「大人」、
![ind6](https://sunagitsune.com/wp-content/uploads/2020/06/ind6.jpg)
子供の表には「子供」と、それぞれ名前をつけます。
![ind7](https://sunagitsune.com/wp-content/uploads/2020/06/ind7.jpg)
これでE列に指定した「大人」または「子供」がそのまま表の名前として指定できます。
しかし=VlookUp(D1,E1),2,FALSE)のように記述すると、
しかし=VlookUp(D1,E1),2,FALSE)のように記述すると、
![ind8](https://sunagitsune.com/wp-content/uploads/2020/06/ind8.jpg)
これはエラーになります。参照範囲に「E1」と書くと、「E1」という表を探そうとしてしまうためです。
![ind9](https://sunagitsune.com/wp-content/uploads/2020/06/ind9.jpg)
![ind10](https://sunagitsune.com/wp-content/uploads/2020/06/ind10-650x306.jpg)
式をオートフィルで下に伸ばせば、条件によって複数の表を使い分けるVlookUp関数のできあがりです。
![](https://sunagitsune.com/wp-content/uploads/2018/10/gui-2311261_1280.png)
やりたいことから方法を探すエクセル(Excel)操作・関数・VBA(マクロ)逆引きまとめ
逆引き(やりたいことから探す)Excel記事まとめ
![](https://sunagitsune.com/wp-content/uploads/2018/12/mathematics-1509559_1280-160x90.jpg)
関数・演算子・メソッド・プロパティ名から探すExcel/VBA(マクロ)使い方・組み合わせ方まとめ
こちらはExcelやメソッドの諸機能を、機能の名称から探せるまとめ記事です。
コメント