EXCEL中如何批量查找数据?

如题所述

第1个回答  推荐于2016-08-25
你这问题需要用宏代码来实现,就很方便的了。
请留下联系方式,将程序发给你。
有关文件批量处理的需求,可以试试我开发的 文件批量处理百宝箱V8.0中的相关功能。本回答被提问者采纳
第2个回答  2020-02-17
第3个回答  2012-11-23
VLOOKUP(lookup_value, table_array, col_index_num, [range_lookup])
VLOOKUP 函数语法具有下列参数 (参数:为操作、事件、方法、属性、函数或过程提供信息的值。):
lookup_value 必需。要在表格或区域的第一列中搜索的值。lookup_value 参数可以是值或引用。如果为 lookup_value 参数提供的值小于 table_array 参数第一列中的最小值,则 VLOOKUP 将返回错误值 #N/A。
table_array 必需。包含数据的单元格区域。可以使用对区域(例如,A2:D8)或区域名称的引用。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 查找精确匹配值还是近似匹配值:
如果 range_lookup 为 TRUE 或被省略,则返回精确匹配值或近似匹配值。如果找不到精确匹配值,则返回小于 lookup_value 的最大值。
要点 如果 range_lookup 为 TRUE 或被省略,则必须按升序排列 table_array 第一列中的值;否则,VLOOKUP 可能无法返回正确的值。有关详细信息,请参阅对区域或表中的数据进行排序。如果 range_lookup 为 FALSE,则不需要对 table_array 第一列中的值进行排序。如果 range_lookup 参数为 FALSE,VLOOKUP 将只查找精确匹配值。如果 table_array 的第一列中有两个或更多值与 lookup_value 匹配,则使用第一个找到的值。如果找不到精确匹配值,则返回错误值 #N/A。

注解

在 table_array 的第一列中搜索文本值时,请确保 table_array 第一列中的数据不包含前导空格、尾部空格、非打印字符或者未使用不一致的直引号(' 或 ")与弯引号(‘ 或 “)。否则,VLOOKUP 可能返回不正确或意外的值。 有关详细信息,请参阅 CLEAN 函数和 TRIM 函数。
在搜索数字或日期值时,请确保 table_array 第一列中的数据未存储为文本值。否则,VLOOKUP 可能返回不正确或意外的值。
如果 range_lookup 为 FALSE 且 lookup_value 为文本,则可以在 lookup_value 中使用通配符 - 问号 (?) 和星号 (*)。问号匹配任意单个字符;星号匹配任意字符序列。如果要查找实际的问号或星号,请在字符前键入波形符 (~)。
示例示例 1

本示例搜索大气特征表的“密度”列以查找“粘度”和“温度”列中对应的值。(该值是在海平面 0 摄氏度或 1 个大气压下对空气的测定。)
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
如何复制示例?
选择本文中的示例。
要点 不要选择行或列标题。从“帮助”中选择示例按 Ctrl+C。
在 Excel 中,创建一个空白工作簿或工作表。
在工作表中,选择单元格 A1,然后按 Ctrl+V。
要点 若要使该示例能够正常工作,必须将其粘贴到工作表的单元格 A1 中。要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。将示例复制到一个空白工作表中后,可以按照您的需要改编示例。

12345678910111213141516 ABC密度粘度温度0.4573.555000.5253.254000.6062.933000.6752.752500.7462.572000.8352.381500.9462.171001.091.95501.291.710公式说明结果=VLOOKUP(1,A2:C10,2)使用近似匹配搜索 A 列中的值 1,在 A 列中找到小于等于 1 的最大值 0.946,然后返回同一行中 B 列的值。2.17=VLOOKUP(1,A2:C10,3,TRUE)使用近似匹配搜索 A 列中的值 1,在 A 列中找到小于等于 1 的最大值 0.946,然后返回同一行中 C 列的值。100=VLOOKUP(0.7,A2:C10,3,FALSE)使用精确匹配在 A 列中搜索值 0.7。因为 A 列中没有精确匹配的值,所以返回一个错误。#N/A=VLOOKUP(0.1,A2:C10,2,TRUE)使用近似匹配在 A 列中搜索值 0.1。因为 0.1 小于 A 列中最小的值,所以返回一个错误。#N/A=VLOOKUP(2,A2:C10,2,TRUE)使用近似匹配搜索 A 列中的值 2,在 A 列中找到小于等于 2 的最大值 1.29,然后返回同一行中 B 列的值。
相似回答