こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

【EXCEL】vlookup関数で横の行を縦の列で読む方法

vlookup,hlookup関数などを使用して
以下のように横の行を縦で検索する方法はありますか?
他の関数を組み合わせてもかまいません。
大量のデータを処理するのでコピーしやすい方法が良いです。
よろしくお願いします。

  A B C D E
1    あいうえ
2 2008 1234
3 2009 5678

A B
1 2009
2 あ 5
3 い 6
4 う 7
5 え 8

投稿日時 - 2008-11-01 15:19:58

QNo.4445928

すぐに回答ほしいです

質問者が選んだベストアンサー

Sheet1            Sheet2
  A  B  C  D  E      A  B   C
1    あ い う え   1   2009 2008
2 2008  1  2  3  4   2 え   8   4
3 2009  5  6  7  8   3 う   7   3
               4 い   6   2
               5 あ   5   1

Sheet2!B2: =VLOOKUP(B$1,Sheet1!$A$1:$E$3,MATCH($A2,Sheet1!$A$1:$E$1,0),FALSE)

投稿日時 - 2008-11-01 17:49:28

お礼

ありがとうございました。
この方法が一番目的にフィットしました。

投稿日時 - 2008-11-01 19:52:59

このQ&Aは役に立ちましたか?

1人が「このQ&Aが役に立った」と投票しています

回答(6)

ANo.5

ANo.4です
修正
Sheet2の「2009」は、B1セルです。

投稿日時 - 2008-11-01 17:41:57

ANo.4

sheet1
  A  B C  D  E
1 年___ あ_い_う_え
2 2008__1__2__3__4
3 2009__5__6__7__8

sheet2
  A   B
1 2009
2  あ_ =HLOOKUP(A2,Sheet1!$A$1:$E$3,MATCH($B$1,Sheet1!$A$1:$A$3,0),FALSE)
3  い_ 以下B2の式をオートフィル
4  う_
5  え_

投稿日時 - 2008-11-01 17:38:12

ANo.3

HLOOKUP関数をお使いください。

「HLOOKUP関数の使い方(別表を横方向に検索し値を取り出す関数)」
http://maglog.jp/excel/Article221109.html

「VLOOKUP・HLOOKUP関数」
http://www.kenzo30.com/ex_kisotyu/ex_ks_tyukyu9_9_4.htm

投稿日時 - 2008-11-01 16:38:08

ANo.2

質問にある下の表のセルB1に 2009 と入力すると、その下に 5~8 が表示されるようにしたいということでしょうか?もしそうなら、その表の

B2セルに =VLOOKUP(B$1,Sheet1!$A$2:$E$3,2,FALSE)
B3セルに =VLOOKUP(B$1,Sheet1!$A$2:$E$3,3,FALSE)
B4セルに =VLOOKUP(B$1,Sheet1!$A$2:$E$3,4,FALSE)
B5セルに =VLOOKUP(B$1,Sheet1!$A$2:$E$3,5,FALSE)

のような式を入力してください。

A列の あ ~ え は、上の表の該当するデータを「形式を選択して貼り付け」の「行列を入れ替える」でコピーしてください。

投稿日時 - 2008-11-01 16:17:02

ANo.1

INDEX関数とMATCH関数の組み合わせでできると思います。
  A  B
1   2009
2 あ  
3 い 
4 う  
5 え  
まで準備できているとして、B2セルに
=INDEX(データ!A$1:E$3,MATCH(B$1,データ!A$1:A$3,FALSE),MATCH(A2,データ!A$1:E$1,FALSE))
と入れて下までコピィ
範囲指定して、列方向に検索して合致した列番号を、行方向に検索した行番号 といった感じです。
詳しくはHelpで確認してください。

投稿日時 - 2008-11-01 15:56:01

お礼

迅速な解答ありがとうございます。

INDEX関数・MATCH関数は便利ですね。
これからもっと勉強してみます。

投稿日時 - 2008-11-01 19:56:07

あなたにオススメの質問