アカセニッキ(明瀬祐介日記)

少しだけ役に立つ、または面白い内容を提供できれば。

作戦

VLOOKUP関数のみで判定表を参照する方法。

投稿日:

■Excelで「クロス抽出」を行なう、
判定表を作る方法を紹介する。

ウェブ検索だと
MATCHやINDEXを使う方法が主流だが、
今回はあえてMATCHやINDEXを使わずに
VLOOKUPのみで作ってみたい。

■上記のような、
星座と血液型から
相性を判定する判定表が
Sheet2のA:E列にあるとする。
(例えばやぎ座のB型の人との相性は、
「×」というふうになる)


■また、Sheet1の A:C列には、
下記のように、
メムバーの血液型と星座がまとまった一覧表がある。

このメムバーそれぞれとの、
血液型、星座からの相性を、
先の「判定表」から判定するわけだ。

■まず、
Sheet2のG:H列に、
次のような表を作ってみよう。

■さて、今作ったのは何かというと、
「x型の場合は、
判定表の何番目の列を参照すればよいか」
ということになる。
言い換えれば
「VLOOKUPの3番目の引数は何か」
だ。


■まず、Sheet1の「血液型」によって、
この数字が出力されるようにしてみよう。

Sheet1のD列に次のような関数を入れる。
=VLOOKUP(B2,Sheet2!G:H,2,False)

(*これは、最低限必要な部分だけを
書いたものなので、
見映えをよくするためには
適宜追加してほしい)

これで御覧の通り、
D列には、
A型なら2、
B型なら3が出力される。

■そして、Sheet1のE列に
次のような関数を入れれば、
判定表から相性が出力される。
=VLOOKUP(C2,Sheet2!G:H,D2,False)

つまり、D2で出力された値を、
E2のVLOOKUP関数の3番目の引数にするわけだ。

(*これも、
最低限必要な関数だけを書いたので、
見映えをよくするために、
適宜必要な関数を追加してほしい)


■ちなみに世の中には、
「VLOOKUP関数を使うのをやめて
MATCH、INDEXを使うべきだ」
という主張がある。
(その意図はまあ分かる)

それはさておき、
とりあえず今知っている
VLOOKUP関数だけで作るには、
上記のようにすればよい。

令和元年七月九日
明瀬祐介(あかせゆうすけ)
acsusk@gmail.com
https://twitter.com/acsusk/

-作戦

執筆者:

関連記事

no image

俺は「研究」には何の興味もない。

■これは恥をしのんで書くのだけれど、私は、学問的な「研究」という物に、ほとんど何の興味もない。 十代のころ、二〇〇五年、私は牢人の末、国立大学の応用科学科に進んだ。将来的には、理系の研究者になろうと、 …

no image

図書館で地元の古い住宅地図コピーすると楽しい。

■これは知っている人は常識なので、偉そうに言うのは恥ずかしいが、もしかしたら何か別の記事からこの日記に入った人は知らないかもしれないので書いておく。 「図書館に行って、地元の古いゼンリンの住宅地図をコ …

no image

三か月で三kg痩せるチャレンヂした。

■今年の正月はじめに「5月初めの新元号開始までに約4kg痩せよう」と思い立ったことがあった。やはり改元は気分を変える。 平成31年1月時点で33歳、身長約1700mm、1月の体重は67.6kg。 大学 …

no image

関西の貧乏学生はフェリーで上海行っとけ。

■大学生活の六年目、 二〇一〇(平成二十二)年の夏、船でひとり、上海に行った。 神戸から出ている「新鑑真号」に乗り、三泊四日だったかで、帰りは大阪への「蘇州号」に乗ったのだ。(これだと往復割引がなくて …

大学に行ったら高校の知人との連絡を断て。

■いきなり結論である。大学に行ったら高校の知人との連絡を断て。 …とまでは言わないのだけれど、これは少しだけ選択肢として考えるくらいはあっていいと思うし、私としては強くおすすめする。特に、高校時代、わ …