[[20080913010804]] 『VLOOKUP関数とHLOOKUP関数の組み合わせ』(めりみ) ページの最後に飛ぶ

[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]

 

『VLOOKUP関数とHLOOKUP関数の組み合わせ』(めりみ)

表Aの数字を表Bへ飛ばす方法として、あるデータソースからダウンロードしたデータを常に表Aに貼り付ける。ただしその際には、A列がないときもあれば、C列がないときもある。もしくは、BBB列がない場合もある。
表BのAのAAAには常にAとAAAが来たら、表AのAのAAAの数字を返す、と言う縦と横のマッチング計算式を入れたいのですが、お教えいただけますか?
ちなみに、VHOOKUPとHLOOPを組み合わせるとどうしても数式ではなく文字列になり答えが戻ってきません。

表A

	A	B		D
AAA	24	37		12
BBB		13		34
CCC	56	36		595

EEE 285 468

表B

	A	B	C	D
AAA				
BBB				
CCC				
DDD				
EEE				


 表Bを埋めるときに、表Aに無い物は何を表示しますかね。
 もしも「0」で良いなら
 簡単なのは、SUMPRODUCT関数を使うことかもしれません。
	[A]	[B]	[C]	[D]	[E]
[1]	表A				
[2]		A	B		D
[3]	AAA	24	37		12
[4]	BBB		13		34
[5]	CCC	56	36		595
[6]					
[7]	EEE	285			468
[8]					
[9]					
[10]					
[11]	表B				
[12]		A	B	C	D
[13]	AAA	24	37	0	12
[14]	BBB	0	13	0	34
[15]	CCC	56	36	0	595
[16]	DDD	0	0	0	0
[17]	EEE	285	0	0	468
 B13セルに
=SUMPRODUCT(($B$2:$E$2=B$12)*($A$3:$A$7=$A13),$B$3:$E$7)
 として、必要行列フィルドラッグです。

 ↓SUMPRODUCT関数に付いて 参考ページです。
http://www.excel.studio-kazu.jp/lib/e3h/e3h.html

 その他MATCH関数とINDEX関数を組み合わせても良いかもしれません。
	[A]	[B]	[C]	[D]	[E]
[11]	表B				
[12]		A	B	C	D
[13]	AAA	24	37	#N/A	12
[14]	BBB	0	13	#N/A	34
[15]	CCC	56	36	#N/A	595
[16]	DDD	#N/A	#N/A	#N/A	#N/A
[17]	EEE	285	0	#N/A	468
 エラー処理等していないので、エラーが出ていますがB13セルに
=INDEX($B$3:$E$7,MATCH($A13,$A$3:$A$7,0),MATCH(B$12,$B$2:$E$2,0))

 >VLOOKUPとHLOOKUPを組み合わせると
 は、MATCH関数と VLOOKUP関数かHLOOKUP関数にすると
 良かったかもしれません。
=VLOOKUP($A13,$A$3:$E$7,MATCH(B$12,$A$2:$E$2,0),FALSE)
 こんな感じで。

 0の非表示、エラー処理等は必要であれば付け加えてください。

 (HANA)

(HANA)さま、上記ご指導大変ありがとうございました。早速先ほど上記の3点の関数を入れてみました。
最初の2件は、私のテクニカル的な未熟さの故うまくワークしなかったのですが、最後のVLOOKUPとMATCH関数の組み合わせにてうまくワークしました。
これからエラー処理を追加して、出来上がりです。この計算式を入れると毎週のレポートデータが相当時間短縮になるため、本当に本当に助かりました。
大変勉強になりました。

また何かありましたらぜひご相談に乗ってください。重ねて御礼申し上げます。(めりみ)


(HANA)さま、
エラー処理も無事に完了しました。完璧です。ありがとうございました。(めりみ)

 うまく行きましたか。よかったです。
(色々書いておいて良かった)

 最初の二つの方法も、場合によっては使い勝手も良いと思いますので
 うまくいかなかった問題を見つけて
 使えるようにしておくのが良いと思いますよ。

 (HANA)

コメント返信:

[ 一覧(最新更新順) ]


YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki. Modified by kazu.