| Excel関数でデータベースから、指定した値に関するデータを取り出したい。 Excelでは行ごとに関連するデータを入れているので、行の値のどれかを検索して、その行のどこかの値を検索すれば、関連する値を取り出せる。 その関数がVLOOKUPである。 テンプレートはこちら。ダウンロードしたい方はこちら。 まず、図のようにデータから検索をかけるようにする。 B4に「=VLOOKUP(A4,E5:G9,2,0)」を入れている。 A4は青で囲んだ「りんご」。E5:G9は緑で囲んだ検索範囲。2は緑で囲まれた表のE列に検索値があったらその行の2列目の値を入れる。最後の0はA4の「りんご」がE5:G9の中に完全一致でないとだめという意味。 A4の「りんご」がめでたくE5の「りんご」に完全一致するので、その行の2列目の100が値として入る。 ここまでできれば、後はコピーする。いちいちVLOOKUP関数を作成しなくても良いのがEXCELの売り。 B4を選択して、枠の右下を左クリックしてしたに伸ばすとコピーできる。 あれ、B6から下は#N/Aになってしまった。。 これは私もはまった。 下にコピーしていくと、検索値は下にずれてよいのだが、検索範囲も下にずれて行ってしまう。 ずれないようにするためには、E5:G9を固定する。 固定するには$E$5:$G$9と$を入れてやると固定する。 E5のところにあわせて、F4を押すと$E$5に変わってくれる。 この状態にして、コピーする。 青のA6の部分は変わるが、$E$5:$G$9のところは変わらない。 VLOOKUPが威力を発揮するのは、データベースが1000行ぐらい合って、さらに、検索値が100行ぐらいある時、かなり威力を発揮する。 1行目の検索値をVLOOKUPで指定しておいて、後の100行はマウスのコピーで一気にコピー。 数秒で指定した値に対するデータベースの値が100行分出てくる。 Excel関数で一番活用できる関数だ。 |