VLOOKUP関数、もっと好きになる!
みんな大好き、VLOOKUP関数
最後の第4引数「検索方法」は、『完全一致』で使われることが多いと思います。
その場合、
『false』
を入力することになりますが、
なんと!
『0』
でも良いんです☆
4文字も省略できちゃいます^^
(ちなみに、近似一致「True」は、『1』)
そしてもう1つ、VLOOKUP関数が好きになる方法。
第1引数「検索値」を、単一セルをクリックしている方が多いと思います。
こんな風に
そして、第2引数「範囲」では、該当セル範囲を、ドラッグして、こうなります。
そして、列番号を入れて、こうなります。
式を、5/5まで、コピーします。
おっと!
5/2と商品ID同じなのに、5/5は、
エクセルに怒られてしまいますた…(**)
第1引数「検索値」は相対参照なので、ちゃんと真横のセルに
来てくれています。
さすが、相対参照さん(^^♪
でもでも、第2引数「範囲」も相対参照のままだったので、
こちらも移動しています。
こん畜生!相対参照めが!!
気を取り直して、これを防ぐ手立てとして、
「相対参照がいけんのなら、$を付けて、絶対参照にすればいいじゃん」
ってことが言われます。
こんな風に
でも、いちいちクリックして、F4を押したりが面倒なんですよね。。。
それに!! 絶対参照にしてしまうと、
項目とかをもし増やしたときに、融通が効かないですよねーー
こんな風に
そこで、全てを解決する方法をお伝えしまっす~~(^▽^)/
「=VLOOKUP(」と入力して、
検索値のある列をまるっと列選択★
★ 列タイトル「F」をクリックしてもいいですが、
←キーをして、「Ctrl+Space」で列選択が楽チンです(^^♪
そして、「,」を手打ちして、
第2引数「範囲」も列選択します。
また、「,」を手打ちして、
第3引数「列番号」に、COLUMN関数を使います。
ここで第3引数「列番号」と言われているものの、実際は、
第2引数「範囲」の左端の列から何番目の列であるか、
なので、実際は、
「列間隔数」とでも言いましょうか。
10番目は6番目から数えて何番目か、
を出すときは、
◆ 10ー6+1 ⇒ 5番目
と計算されます。
ABCDEFGHIJK
と並んでるので、
◆ L列の番目ーK列の番目+1
⇒ 〇番目
とすれば良いですね^^
そこで、「L列の番目」「K列の番目」を調べるのに、
COLUMN関数を使います。
COLUMN関数は、
=COLUMN(L1)
とすると、「12」と表示され、
ああ、左から12番目の列なんだな、と分かります。
なのですが、ここでも同じように、
「列選択」が有効なのです☆
と言う訳で、
◆ L列の番目ーK列の番目+1
= COLUMN(L:L)ーCOLUMN(K:K)+1
で計算することにして、これをそっくりそのまま
第3引数「列番号」に入れちゃいます♪
そして、また、「,」を手打ちして、
一番最初に書いた、
『false』の代わりに、「0」を入れます。
そして最後に、「)」を手打ちして、Enter!
めでたく、引っ張ってこれました☆
それでは、5/2、5/5にも式をコピーしてみますね。
ぶれることなく、5/5も商品名を引用することができました~~(^▽^)/
ですが、
この式の良い点は、これだけじゃないんです!!!
全て列を相対参照しているので、
項目を増やしたりしても、全てに自動で対応したくれるんです!
★ 先ほどの、第2引数「範囲」の列を増やした場合はもちろんのこと、
左側にどれだけ列が増えても O━d(。・∀・。)━K
それにそれに、セル番地での相対参照だと、
ご入力に気付かない可能性があります。
一見正しく引用しているように見えますが、
実は、5/2と同じ式が入っています。
最初式をコピーして表を作ったとしても、途中誰かが何かキーに当たってしまい、
式が消えてしまうことがあります。
その時手入力した場合、行番号を打ち間違うことは十分起こり得ることです。
数十個程度の項目だったら、行番号の前後の差を
確認・見つけ出すことは可能です。しかし、100以上ともなると、
確認することさえ、面倒です!!
なので、確認しなくても済むような式、
もしくは、変更が目立つような式を普段から使うことを
意識しておくことが重要です。
ですので、この方式のVLOOKUP関数を活用してもらえればな
と思います~~(^▽^)/
VLOOKUP関数は、別シートからのデータを引っ張ってくることが多いと
思いますが、
第3引数「列番号」の算定のCOLUMN関数は、
別シートから引っ張ってくる時に、より効果が実感できます!!
◆ =COLUMN(Sheet6!K:K)-=COLUMN(Sheet6!L:L)+1
のようにして使ってくださいね^^