【Excel】HLOOKUPもできる子なんです。
VLOOKUP関数が使えるとExcel中級者である。
VLOOKUP関数が活躍するシチュエーションは縦に長い表である。いわゆるリストである。私の中にこの意識があるせいか、シートが微妙に横に長くなった時に悩んだ*1。
横に並んだリストから一致するものを探し出し、その下にあるデータを引っ張ってくる、これはHLOOKUP関数である。VLOOKUP関数に隠れがちなHLOOKUP関数を忘れないためにも記事にする。
HLOOKUP関数の使い方
HLOOKUP関数の使い方を下記に示す。
=HLOOKUP(検索値,範囲,行番号,[検索の型])
検索値とは、リストの中から探し出したい値である。
範囲とは、簡単に言うとリストの範囲である*2。
行番号とは、抜き出したいデータがある行番号である。この際の行番号とは、2つ目の引数で選択した範囲内での行番号である。
検索の型とは、完全一致(FALSE)か不完全一致(TRUE)のどちらで探すかの選択である。
実例を示す。
ぼくは、下記の雑用を4人の友達(太郎くん、恵美ちゃん、健太くん、真美ちゃん)に依頼しようとしている。
・ポチ(犬)の散歩
・漢字ドリルの宿題
・ゲーム機を貸してもらう
・掃除当番交代
友達4人にそれぞれの雑用を行う場合の駄賃をヒアリングした。ちなみに、ぼくのお小遣いは500円である。ヒアリング結果を元にリストを作成した。また、各雑用の最安駄賃を黄色で塗りつぶし、フォントも太くした*3。
最安を抜粋したので、それぞれに依頼すればいいと思うかもしれない。だが、事は単純ではない。以下に、ぼくの考えを示す。
・太郎くんがポチの散歩を行う駄賃は最安ではないが、散歩をしている間であればタダでゲームを貸してくれる可能性が高い。(健太くんにはお兄さんがいるのでこの条件は通用しない)
・恵美ちゃんは¥50で掃除当番を交代してくれるかもしれないが、以前も交代したことを思い出し、直前で額を引き上げる可能性が高い。UPするリスクも考慮すると、最安だからと言って飛びつくのは危険である。
このリストを作成する際の重要な点は3点である。
・HLOOKUP関数の第3引数である行番号を別途記載しておくこと*4。
・ISNA関数を利用し、依頼先未入力によるエラーを未然に防ぐこと
・依頼先はデータの入力規則でリスト化し、依頼先入力ミスを防ぐこと
おわりに
雑用の数、依頼する友達の数、制約条件が増えると手計算などしていられない。また、他人に意見を仰いだ際に「もしこうだったら?」を切り替えられるように依頼先のリスト化及びLOOKUP系関数の利用は重要である。