VLOOKUP
全部显示
全部隐藏
在表格阵列的第一栏中搜寻某个数值,并传回该表格阵列中同一列之其他栏中的数值。
VLOOKUP 中的 V 代表「垂直」。当比对值位於要寻找之资料左方的某一栏中时,请使用 VLOOKUP,而非 HLOOKUP。
语法
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
Lookup_value 在表格阵列 (阵列:用来建立产生多个结果或运算一组以列及栏排列之引数的单一公式。阵列范围共用一个公式;一个阵列常数是用作一个引数的一组常数。)的第一栏中搜寻的数值Lookup_value 可以是数值,也可以是参照位址。当 lookup_value 小於 table_array 第一栏中的最小值时,VLOOKUP 将会传回错误值 #N/A。
Table_array 两栏以上的资料。请使用参照位址来指向某个范围或范围名称。table_array 第一栏中的值即为 lookup_value 所搜寻的值。这些值可以是文字、数字或逻辑值 (不分大小写)。
Col_index_num table_array 中的栏号;相符的值将从该栏中传回。如果 col_index_num 引数值为 1,则传回 table_array 第一栏中的值;如果 col_index_num 引数值为 2,则传回 table_array 第二栏中的值,依此类推。如果 col_index_num:
小於 1,则 VLOOKUP 会传回错误值 #VALUE!。
大於 table_array 中的栏数,则 VLOOKUP 会传回错误值 #REF!。
Range_lookup 一个逻辑值,用来指定 VLOOKUP 应该要寻找完全符合还是部分符合的值:
如果此引数值为 TRUE 或被省略了,则传回完全符合或部分符合的值。如果找不到完全符合的值,将会传回仅次於 lookup_value 的值。
table_array 第一栏中的值必须以递增顺序排序;否则,VLOOKUP 可能无法提供正确的值。如需详细资讯,请参阅排序资料。
如果此引数值为 FALSE,则 VLOOKUP 函数只会寻找完全符合的值。在此情况下,table_array 第一栏中的值便不需要排序。如果 table_array 第一栏中有两个以上的值与 lookup_value 相符,将会使用第一个找到的值。如果找不到完全符合的值,则传回错误值 #N/A。
备注
在 table_array 的第一栏中搜寻文字值时,请确定 table_array 第一栏中的资料未包含前置空格、结尾空格、不成对的一般引号 ( ' 或 " ) 及智慧引号 ( ‘ 或 “),以及非列印字元。否则,VLOOKUP 可能会提供错误或与预期不符的值。如需详细资讯,请参阅 CLEAN 及 TRIM。
搜寻数字或日期值时,请确定 table_array 第一栏中的资料并未储存成文字值。否则,VLOOKUP 可能会提供错误或与预期不符的值。如需详细资讯,请参阅将储存成文字的数字转换成数值。
如果 range_lookup 为 FALSE 且 lookup_value 为文字,则您需要在 lookup_value 中使用万用字元、问号 (?) 和星号 (*)。问号可替代任一字元;星号可替代任一系列的字元。如果您确实要寻找实际的问号或星号,请在该字元前输入波状符号 (~)。
范例 1
如果将范例复制到空白工作表上,就会比较容易了解。
如何复制范例
建立空白的活页簿或工作表。
选取 [说明] 主题中的范例。
附注 请不要选取列或栏标题。
选取 [说明] 中的范例
按 CTRL+C 键。
选取工作表中的 A1 储存格,然后按 CTRL+V 键。
若要在结果检视与会传回结果的公式检视之间进行切换,请按 CTRL+` (重音符符号),或在按一下 [工具] 标签出现的 [公式稽核] 群组中,按一下 [显示公式] 按钮。
本范例会在一份大气特性表的 [密度] 栏中进行搜寻,以找出 [黏性] 和 [温度] 栏中的对应值 (下表中的值适用於 1 大气压的空气,亦即位於海平面、摄氏温度为 0 度的空气)。
1
2
3
4
5
6
全部显示
全部隐藏
在表格阵列的第一栏中搜寻某个数值,并传回该表格阵列中同一列之其他栏中的数值。
VLOOKUP 中的 V 代表「垂直」。当比对值位於要寻找之资料左方的某一栏中时,请使用 VLOOKUP,而非 HLOOKUP。
语法
VLOOKUP(lookup_value,table_array,col_index_num,range_lookup)
Lookup_value 在表格阵列 (阵列:用来建立产生多个结果或运算一组以列及栏排列之引数的单一公式。阵列范围共用一个公式;一个阵列常数是用作一个引数的一组常数。)的第一栏中搜寻的数值Lookup_value 可以是数值,也可以是参照位址。当 lookup_value 小於 table_array 第一栏中的最小值时,VLOOKUP 将会传回错误值 #N/A。
Table_array 两栏以上的资料。请使用参照位址来指向某个范围或范围名称。table_array 第一栏中的值即为 lookup_value 所搜寻的值。这些值可以是文字、数字或逻辑值 (不分大小写)。
Col_index_num table_array 中的栏号;相符的值将从该栏中传回。如果 col_index_num 引数值为 1,则传回 table_array 第一栏中的值;如果 col_index_num 引数值为 2,则传回 table_array 第二栏中的值,依此类推。如果 col_index_num:
小於 1,则 VLOOKUP 会传回错误值 #VALUE!。
大於 table_array 中的栏数,则 VLOOKUP 会传回错误值 #REF!。
Range_lookup 一个逻辑值,用来指定 VLOOKUP 应该要寻找完全符合还是部分符合的值:
如果此引数值为 TRUE 或被省略了,则传回完全符合或部分符合的值。如果找不到完全符合的值,将会传回仅次於 lookup_value 的值。
table_array 第一栏中的值必须以递增顺序排序;否则,VLOOKUP 可能无法提供正确的值。如需详细资讯,请参阅排序资料。
如果此引数值为 FALSE,则 VLOOKUP 函数只会寻找完全符合的值。在此情况下,table_array 第一栏中的值便不需要排序。如果 table_array 第一栏中有两个以上的值与 lookup_value 相符,将会使用第一个找到的值。如果找不到完全符合的值,则传回错误值 #N/A。
备注
在 table_array 的第一栏中搜寻文字值时,请确定 table_array 第一栏中的资料未包含前置空格、结尾空格、不成对的一般引号 ( ' 或 " ) 及智慧引号 ( ‘ 或 “),以及非列印字元。否则,VLOOKUP 可能会提供错误或与预期不符的值。如需详细资讯,请参阅 CLEAN 及 TRIM。
搜寻数字或日期值时,请确定 table_array 第一栏中的资料并未储存成文字值。否则,VLOOKUP 可能会提供错误或与预期不符的值。如需详细资讯,请参阅将储存成文字的数字转换成数值。
如果 range_lookup 为 FALSE 且 lookup_value 为文字,则您需要在 lookup_value 中使用万用字元、问号 (?) 和星号 (*)。问号可替代任一字元;星号可替代任一系列的字元。如果您确实要寻找实际的问号或星号,请在该字元前输入波状符号 (~)。
范例 1
如果将范例复制到空白工作表上,就会比较容易了解。
如何复制范例
建立空白的活页簿或工作表。
选取 [说明] 主题中的范例。
附注 请不要选取列或栏标题。
选取 [说明] 中的范例
按 CTRL+C 键。
选取工作表中的 A1 储存格,然后按 CTRL+V 键。
若要在结果检视与会传回结果的公式检视之间进行切换,请按 CTRL+` (重音符符号),或在按一下 [工具] 标签出现的 [公式稽核] 群组中,按一下 [显示公式] 按钮。
本范例会在一份大气特性表的 [密度] 栏中进行搜寻,以找出 [黏性] 和 [温度] 栏中的对应值 (下表中的值适用於 1 大气压的空气,亦即位於海平面、摄氏温度为 0 度的空气)。
1
2
3
4
5
6