Excel。検索値を入力して、行方向のデータを列方向で表引きしたい
<VLOOKUP+ROW関数>
行方向のデータを表引きした結果を、列方向で表示したい場合、どのようにしたら、いいのでしょうか。
次の表を用意しました。
B6に3と入力したら、B7:B10にNO3のデータを表示させたいわけです。
単に、コピー貼り付けで、行列入れ替えというのも、1回だけならば、OKですが、NOを入力するたびに、そのデータを表引きしたいので、コピーだけというわけにはいきません。
やりたいことは「表引き」です。
そこで、VLOOKUP関数をつかってみることにします。
問題になるのは、3つ目の引数の「列番号」です。
では、B7に次の数式を設定します。
=VLOOKUP($B$6,$A$2:$E$4,ROW(A2),FALSE)
オートフィルで数式をコピーします。
行方向のデータを列方向に表引きすることができました。
数式を確認しておきましょう。
1番目の引数は、検索値。
B6ですが、オートフィルで数式をコピーするので、絶対参照で固定する必要がありますので、$B$6
2番目の引数は、範囲。$A$2:$E$4
こちらも、オートフィルで数式をコピーしますので、絶対参照を設定します。
次がポイントになる
3番目の引数の、列番号。
下方向に、オートフィルで数式をコピーしたときに、2~4としていきたいわけです。
列番号を求めることができるROW関数をつかえば、列番号をつくることができますので、
ROW(A2)
最後は、検索方法。完全一致なので、FALSE と設定します。