Microsoft Excel/ヒント/VLOOKUP
表示
< Microsoft Excel | ヒント
(Microsoft Excelのヒント/vlookup から転送)VLOOKUPは、関数のひとつで、条件に合ったデータを縦に探して、その右のデータを返す関数です。書式は
VLOOKUP (検索値, 範囲, 列番号, 検索の型)
です。
VLOOKUP を指定すると、検索値
と一致するものを範囲
のいちばん左の列から探し、その列番号
より1少ない数だけ右のセルにあるデータを返します。
つまり、
A | B | C | |
---|---|---|---|
1 | とうきょう | 東京 | Tokyo |
2 | ゆうらくちょう | 有楽町 | Yurakucho |
3 | しんばし | 新橋 | Shinbashi |
4 | はままつちょう | 浜松町 | Hamamatsucho |
5 | たまち | 田町 | Tamachi |
6 | しながわ | 品川 | Shinagawa |
という表がったときに、任意の場所に
=VLOOKUP("しんばし",$A$1:$C$6,2)
と入力すると、A1からA6までのセルからしんばし
を探し出して、2
- 1だけ右にある
新橋
を表示します。
ところで、そのセルをひとつ右のセルにコピーしたらどうなるでしょうか。普通、Shinbashi
が表示されると思いますが、表示はやはり新橋
です。というのは、ひとつ右のセルにコピーしてもやはり中身は
=VLOOKUP("しんばし",$A$1:$C$6,2)
で、
=VLOOKUP("しんばし",$A$1:$C$6,3)
にはなってくれないのです。これでは困ってしまいますね。だからといって、最初のセルを呼び出すセルの名前を使って
=VLOOKUP("しんばし",$A$1:$C$6,B1)
のようにすることはできません。
しかし、ここでひとつだけ方法があります。最初のセルを
=VLOOKUP("しんばし",$A$1:$D$6,COLUMNS($A$1:B1))
のようにするのです。COLUMNS
の最初の$A$1
には、範囲の左端に当たるセルを入れます。(行はどの行を選んでも同じ結果になります)これならば右にコピーすれば
=VLOOKUP("しんばし",$A$1:$D$6,COLUMNS($A$1:C1))
となり、Shinbashi
が表示されます。