VLOOKUP関数って悩みますよね。 空白だったらとかの処理も大変だし、列番号を一回一回設定しなきゃなんないし。 そんな時にそのままコピペで使える計算式を紹介します。
VLOOKUP関数の代わりに全部入りの数式
次の表は、A10からC12の範囲の表から、商品番号を調べて商品名と価格を求めています。
全部、セルB2に作成した計算式をコピーして作成しています。
このような場合、VLOOKUP関数でやりたくなりますが、次の点ができないです。
- 一覧表の一番左の列に探す番号がない。
- 商品番号4はない。
それがクリアされているセルB2に入力されている数式は、ズバリ!
=IFERROR(OFFSET($A$9,MATCH($A2,$C$10:$C$12,0),MATCH(B$1,$A$9:$C$9,0)-1),””)
です。
でも、この計算式をそのままコピーしても動きません。設定する箇所を日本語にした数式はこちらです。
=IFERROR(OFFSET([絶]一覧表の先頭セル,MATCH([列]参照する値,[絶]一覧表の参照される範囲(タイトル除く),0),MATCH([行],[絶]一覧表のタイトル範囲,0)-1),””)
です。
[絶]は絶対参照なので$A$1という$の付き方、[列]は列だけ絶対参照で$A1という$の付き方、[行]は行だけ絶対参照なので、A$1という$の付き方です。
この計算式は、エラーや空白の時に空白になり、列番号も指定せずともいいので横にもそのままコピーができます。
コメント
[…] れる記事です。 そういえばこのブログでも似た記事を配信してますね。 […]