[[20061028224829]] 『VLOOKUP関数の”検索の型”について』(JP) ページの最後に飛ぶ

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

 

『VLOOKUP関数の”検索の型”について』(JP)

VLOOKUP関数の第4引数に「FALSE」を指定した場合は完全一致、「TRUE」を指定した場合は未満の近似値ですが、これを直近上位の近似値にできる「検索の型」というものはないでしょうか?よろしくお願いします。


 E1は=VLOOKUP(D1,A1:C4,3) で、Cとなりますが、
 F1は=INDEX(C6:C9,MATCH(D1,A6:A9,-1)) とするとDとなります。
 このようなことでしょうか?(茨)
	A	B	C	D	E	F
1	0	以上	A	25	C	D
2	10	以上	B			
3	20	以上	C			
4	30	以上	D			
5						
6	30	以下	D			
7	20	以下	C			
8	10	以下	B			
9	0	以下	A			


 お答えありがとうございます。

やはり、直近上位値を返すようにするには、引用するデータ表を「○以上×未満」の形 にする必要がありそうですね。

 私は給料表をデータ表として、「現在の給与額を来期の新給料表の直近上位額の号給に移行する」というものを作成しています。

「○以上×未満」の形のデータ表にするために、「0号給」の値を入れたものにするしかないのでしょうか?


 下表のように号級順に並んでいるデータなら、
 D1で=INDEX(B2:B7,MATCH(C2,B2:B7)+1)
 E1は=INDEX(A2:A7,MATCH(D2,B2:B7,0))
 のようにシフトさせるのはどうでしょう?   (Hatch)
号	給料	現行	来期	来期号級
1	110000	135000	140000	4
2	120000			
3	130000			
4	140000			
5	150000			
6	160000			


ありがとうございました。
(Hatch)さんに教えていただいた計算式で無事うまく直近上位値を表示させることができました!

VLOOKUP関数にとらわれて、INDEXやMATCHを使用するにはデータそのものも変更する必要があると思っていました。

(茨)さん、(Hatch)さん、取りとめも無い質問にお答えいただいて非常に感謝しております。本当にありがとうございました。(JP)


コメント返信:

[ 一覧(最新更新順) ]


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