みなさん、こんにちは!
タカハシ(@ntakahashi0505)です。
VLOOKUP使ってますか!?
ということで、今回はExcel中級への最初の難関とも言えるVLOOKUP関数についてのお話です。
VLOOKUP関数はデータベース検索の基本中の基本、Excelの能力をいかんなく発揮するためには大活躍する関数ですが、難しいと感じる方が多いかも知れません。
ただ、難しいと感じるのはデータの準備の仕方に問題があるという場合が多いです。データベースとは何かということを紐解きながら、簡単にVLOOKUPを身に着けるお手伝いをしていきます。
VLOOKUP関数ってそもそも何?
「V」は「vertical:垂直」のことです。「lookup:検索する」ということですので、垂直つまり縦方向に検索するための関数ということです。わかりやすい。
ExcelでVLOOKUP関数を使う場合の記述方法はといいますと、
VLOOKUP(検索値,範囲,列番号,検索方法)
指定された範囲の1列目で特定の値を検索し、指定した列と同じ行にある値を返します。
ということです。わかるような、わからないような…。
こちらのシートで
=VLOOKUP(A10,A:D,4,0)
とした場合、
- A10セルは”栃木県”
- 指定した範囲はA:D
- 1列目はA列”都道府県”(赤枠)
です。赤枠の中で”栃木県”を検索します。従って、
- 検索した結果の行は10行目(青枠)
になります。さらに
- 列番号は”4″
- 指定した範囲の4番目の列はD列”面積”
ですので、栃木県の行である10行目の4番目(面積)の値(6408.28)を引っ張ってくる、ということになります。
最後の0はおまじないのようなものですので、今はあまり気にせず0でOKです。アルファベットでfalseと入力してもよいです。
検索という作業はコンピュータが最も得意とする作業の一つです。人間が探そうとすると時間もかかりますし、目も疲れるのですが、コンピュータは高速かつ正確に目的にたどり着くことができます。
ただし、次で説明するようにコンピュータが探しやすいようにしてあげないと、VLOOKUPの威力も効果激減してしまうのです。
IDがないとVLOOKUP関数は使えません
この表でVLOOKUP使ってみましょう!…ってなんだか変な雰囲気しますね?
この表ではVLOOKUPは使えたものではありません。
使えない理由の1つめはIDとなる列が存在していないということです。どの列も同じ値が含まれてしまっているので、1つの値だけを検索しようがないということです。
その場合は
このように、IDを付与するとA列”ID”をキーとしての検索が可能になります。
ID【識別子】identifier
身分証明書という意味の英単語。ITの世界では、何らかの対象を集団の中で一意に識別するための識別符号のこと。コンピュータの利用者を識別するために一人一人に割り当てられたユーザ名などがこれに当たる。(IT用語辞典より)
データベースを作るときは最も左の列にID列を持ってくるとVLOOKUPなどのデータベース関数の働きがとてもよくなります。
VLOOKUPを使うならセルの結合が厳禁
ただ、もう一つ問題があります。
=VLOOKUP(A5,A:G,4,0)
とすると、気持ち的には”××書店”という値が返ってきてほしいのですが、実際は0となります。これはセルの結合を使ってしまっているからです。
セルの結合をした場合は、番号が若い方のセルに値が入っていてそれ以外のセルには値が入っていないことになってしまうので、こういう結果が出てしまうのです。その場合は
このようにすると、きちんと欲しい値が返るようになります。
人のための資料なのかコンピュータのためのデータなのか
Excelを使用するときは、今扱っているシートが人が見るための資料なのか、コンピュータに働かせるためのデータなのか、明確に答えを出しておくことをオススメします。
人のための資料ならばセルの結合や空白などを多用して見やすくわかりやすいシートを目指すのが当然良いです。
一方で集計・分析をするためのデータベースなのであればコンピュータに扱いやすいようにデータを用意しましょう。
さもないと、VLOOKUP関数をはじめデータベースを取扱う珠玉の機能が宝の持ち腐れ、ということになります。
コンピュータにその役割をいかんなく発揮してもらうことは、結果みなさんのお仕事の効率をよくすることにつながります。
人にやさしくすべきときと、コンピュータにやさしくすべきときと、明確に使い分けていきましょう。
今回は以上となります。最後まで読んで頂きましてありがとうございました!