2015-06-24 20:08:11 +0000 2015-06-24 20:08:11 +0000
2
2

VLOOKUP - 1つの行/データのマッチに対して複数の値/列を返す

VLOOKUPを使用する際に、ターゲットシートに複数の列をプルする方法を考えています。例えば、

シート1に100行のデータを持つ従業員のリストがあり、別のシートから従業員の詳細をプルしたいとします。

2枚目のシートから、隣り合う複数の列が欲しい。(例:D,E,F,G.)

1枚目のシートからVLOOKUPをしているんだけど、5列目の列で

lookup_valueはシート1のA2

Table_arrayはシート2の “A thru F”

でも、D,E,F,G列か、col_index_num - 4-7を引っ張ってきたいんだ。

一度に一つずつやってるんだけど、もっと良い方法があると思うんだけど。

ありがとう

回答 (3)

2
2
2
2015-06-24 20:20:10 +0000

どうしてもやりたい場合は配列関数でVLOOKUPを使うといいでしょう。

詳細は このブログ記事 にありますが、以下は要約です:

  1. VLOOKUPの結果を表示させたいセル(取得したいカラム数と同じセル)を選択します。

  2. 次に、他の場所をクリックせずに数式を入力します。VLOOKUP(“Florian”,A:D,{1,2,3,4},FALSE)と数式バーに入力します。3番目の引数{1,2,3,4}は、取得する列を指定します。

  3. この後、Ctrl + Shift + Enterキーを押すだけです。これにより、上記の数式が中括弧で囲まれ、選択したセルにはフェッチされた列が表示されます。

0
0
0
2020-01-10 18:06:42 +0000

関数をクエリすることもできます。使い勝手が良すぎます。
この式をI2に貼り付けます。

QUERY(E:G,"select F, G where E='blah' "& concatenate(arrayformula("OR E='"&UNIQUE(H3:H5)&"'")))
0
0
0
2019-05-25 14:49:40 +0000

実際には、ステップ3で「Ctrl+Shift+Enter」キーを押すと、次のような式になります。{=VLOOKUP(“Florian”,A:D,{1,2,3,4},FALSE)}となります。そして、この式を他の3つの列にドラッグする必要があります。