- Advanced Excel Functions Tutorial
- Advanced Excel Functions - Home
- Compatibility Functions
- Advanced Excel Functions - Cube
- Database Functions
- Date & Time Functions
- Engineering Functions
- Financial Functions
- Information Functions
- Advanced Excel Functions - Logical
- Lookup & Reference Functions
- Math & Trignometric Functions
- Statistical Functions
- Useful Resources
- Quick Guide
- Useful Resources
- Discussion
Lookup and Reference - HLOOKUP Function
Description
The HLOOKUP function searches for a value in the top row of a table or an array of values, and then returns a value in the same column from a row you specify in the table or array.
You can use HLOOKUP when your comparison values are located in a row across the top of a table of data, and you want to look down a specified number of rows.
The H in HLOOKUP stands for "Horizontal". You can use VLOOKUP when your comparison values are located in a column to the left of the data you want to find.
Syntax
HLOOKUP (lookup_value, table_array, row_index_num, [range_lookup])
Arguments
Argument | Description | Required/ Optional |
---|---|---|
lookup_value |
The value to be found in the first row of the table. Lookup_value can be a value, a reference, or a text string. |
Required |
table_array |
A table of information in which data is looked up. Use a reference to a range or a range name. The values in the first row of table_array can be text, numbers, or logical values. See Notes Below. |
Required |
row_index_num |
The row number in table_array from which the matching value will be returned. A row_index_num of 1 returns the first row value in table_array, a row_index_num of 2 returns the second row value in table_array, and so on. 1 ≤ row_index_num ≤ the number of rows in the table_array. HLOOKUP returns the #VALUE! error value; if row_index_num is greater than, |
Required |
range_lookup |
A logical value that specifies whether you want HLOOKUP to find an exact match or an approximate match. If TRUE or if omitted, an approximate match is returned. In other words, if an exact match is not found, the next largest value that is less than lookup_value is returned. If FALSE, HLOOKUP will find an exact match. If one is not found, the error value #N/A is returned. |
Optional |
Notes
table_array
If range_lookup is TRUE, the values in the first row of table_array must be placed in ascending order: ...-2, -1, 0, 1, 2..., A-Z, FALSE, TRUE. Otherwise, HLOOKUP may not give the correct value
Uppercase and lowercase text are equivalent
Sort the values in ascending order, left to right
If range_lookup is FALSE, table_array does not need to be sorted
If row_index_num is less than 1, HLOOKUP function returns the #VALUE! error value.
If row_index_num is not recognized as a numeric value, HLOOKUP function returns the #VALUE! error value.
If row_index_num is greater than the number of rows in the table_array, HLOOKUP function returns the #REF! error value.
If HLOOKUP function cannot find lookup_value, and range_lookup is TRUE, it uses the largest value that is less than lookup_value.
If lookup_value is smaller than the smallest value in the first row of table_array, HLOOKUP function returns the #N/A error value.
If range_lookup is FALSE and lookup_value is text, you can use the wildcard characters, question mark (?) and asterisk (*), in lookup_value. A question mark matches any single character; an asterisk matches any sequence of characters. If you want to find an actual question mark or asterisk, type a tilde (~) before the character.
Applicability
Excel 2007, Excel 2010, Excel 2013, Excel 2016