excel関数・VLOOKUP
今日はこれを覚えればexcel作業の一部を自動化できるVLOOKUP関数を解説します。
VLOOKUP関数は検索した値が一致するもしくは含まれる値を探し出して、探し出したセルの列から何番目かの値を返します。
...
こんな風に言われてもよくわからないと思います。
具体例
まず、下記のようなexcel表を作成します。
横のセルに名前と住所Noを入力する欄を作成し、住所欄を空白にした状態にします。
ここで住所Noを検索する値として住所を入力していきます。
それではセルF2に「=vlookup(E2,A$2:B$16,2,FALSE)」を入力します。
すると…
「=vlookup(E2,A$2:B$16,2,FALSE)」について
=vlookup()・・・関数の宣言です。ここに関数を入れますよ!という宣言です。
E2・・・検索値です。個々のセルの値を範囲の一列目から探します。
A$2:B$16・・・検索値を探す範囲+何行目を返す値の範囲を指定します。
ここでは住所Noを検索して住所を返すので、そのデータが入っている範囲であるA2からB16までを選択しています。
また「$」は固定記号です。「F2」のセルを「F13」のセルまでオートフィルでvlookup関数を入力するので、オートフィルした際に「A2」の「2」が変化しないように「B16」の「16」が変化しないように固定記号で数字を固定します。固定記号を付けない場合オートフィルで下に行くにつれて範囲が下にずれていきます。
2・・・範囲の何列目を返すかの値です。(列番号)
「1」が入力されていると住所Noの値が返ってきます。ここでは「2」を入れることで住所の値を返すようにしています。
FALSE・・・検索方法についての指定値です。
「TRUE」にすると近似一致検索・あいまい検索になってしまい、検索する範囲の値が昇順になっていないと検索結果が変わってきてしまいます。検索結果が変わってしまった例を下記に示します。※便宜上下記左の表の「宮城」住所Noを「3」に、「秋田」を「6」に変更しています。
検索結果が正しくなくなってしまった例
「FALSE」とすることで完全に一致した値しか検索されなくなります。
※「TRUE」の方が計算が早いというメリットがありますが、表が昇順であるという条件を満たす必要があります。「FALSE」の場合は表が昇順である必要はありません。
次に、オートフィルで「F16」までvlookup関数を入力します。
これで、住所Noを入力するだけで住所を自動で入力することが出来ました。
vlookup関数は定められた表から検索値を探してきて指定した列番号の値を返すことが出来る関数です。
検索する値は日本語や漢字も可能です。
エラーが出たら、範囲の指定と列番号の指定をチェックしてみてください。
ここまで読んで頂きありがとうございました!(^^)