値を検索する関数 ~Excelワークシート関数
エクセルで値を検索するワークシート関数をまとめました。
(参考)
VBAからも
Application.WorksheetFunction.ワークシート関数()
とすると、ワークシート関数を使うことが出来ます。
VLookupワークシート関数
- VLookup(検索値, 検索セル範囲, 取出したい列番号, 近似一致フラグ)
-
検索セル範囲の左端列から検索値を探し出し、検索セル範囲内の指定した列番号の値を取得します。
検索値:検索したい値
検索するセル範囲:検索値を検索するセル範囲を指定
取出したい列番号:検索するセル範囲 の左から何列目の値を取出したいか指定
近似一致フラグ:TRUE 近似一致(完全に一致する値がなければ近い値を取得)
但し、検索セル範囲の左端をキーに並び替えしてなければならないFALSE 完全一致
セル E2 は 31 が表示されます
A | B | C | D | E | F | |
1 | 名前 | 年齢 | 探す名前 | 年齢 | ||
2 | イシカワ | 24 | カワサキ | =VLOOKUP(D2,$A$2:$B$5, 2, FALSE) 31 が表示されます |
||
3 | カワサキ | 31 | ||||
4 | ノムラ | 54 | ||||
5 | サカイ | 40 |
HLookupワークシート関数
- HLookup(検索値, 検索セル範囲, 取出したい行番号, 近似一致フラグ)
-
検索セル範囲の上端行から検索値を探し出し、検索セル範囲内の指定した行番号の値を取得します。
検索値:検索したい値
検索するセル範囲:検索値を検索するセル範囲を指定
取出したい行番号:検索するセル範囲 の上から何行目の値を取出したいか指定
近似一致フラグ:TRUE 近似一致(完全に一致する値がなければ近い値を取得)
但し、検索セル範囲の左端をキーに並び替えしてなければならないFALSE 完全一致
セル C5 は 31 が表示されます
A | B | C | D | E | F | |
1 | 名前 | イシカワ | カワサキ | ノムラ | サカイ | |
2 | 年齢 | 24 | 31 | 54 | 40 | |
3 | ||||||
4 | 探す名前 | 年齢 | ||||
5 | カワサキ | =HLOOKUP(B5,$B$1:$E$2, 2, FALSE) 31 が表示されます |
MATCHワークシート関数
- MATCH(検索値, 検索セル範囲, [照合の種類])
-
検索セル範囲から検索値を探し出し、検索セル範囲内の何番目かを返します。
検索値:検索したい値
検索するセル範囲:検索値を検索するセル範囲を指定
取出したい列番号:検索するセル範囲 の左から何列目の値を取出したいか指定
近似一致フラグ:-1 以上
但し、検索セル範囲が昇順(小さい→大きい)に並んでいる必要があります0 完全一致 1 以下
但し、検索セル範囲が降順(大きい→小さい)に並んでいる必要があります
A | B | C | D | E | F | G | H | |
1 | 色 | |||||||
2 | 赤色 | 青色 | 黄色 | 黄色 | =MATCH(G2,C2:E2,0) 3 が表示されます |
|||
3 | 大きい | 3400 | 3200 | 3000 | ||||
4 | サイズ | 普通 | 2400 | 2200 | 2000 | |||
5 | 小さい | 1400 | 1200 | 1000 | ||||
6 | ||||||||
7 | 普通 | |||||||
8 | =MATCH(B7,B3:B5,0) 2 が表示されます |
INDEXワークシート関数
- INDEX(セル範囲 ,行番号 ,列番号)
- セル範囲の(行番号,列番号)のセルの値を返します。
A | B | C | D | E | F | G | H | |
1 | 色 | |||||||
2 | 赤色 | 青色 | 黄色 | 黄色 | =MATCH(G2,C2:E2,0) 3 が表示されます |
|||
3 | 大きい | 3400 | 3200 | 3000 | ||||
4 | サイズ | 普通 | 2400 | 2200 | 2000 | |||
5 | 小さい | 1400 | 1200 | 1000 | ||||
6 | ||||||||
7 | 普通 | |||||||
8 | =MATCH(B7,B3:B5,0) 2 が表示されます |
=INDEX(C3:E5,B8,H2) 2000 が表示されます |