如何使用INDEX函数 - 知乎首发于Excel切换模式写文章登录/注册如何使用INDEX函数知乎用户hqV0IvINDEX函数会返回表格或区域中的值或引用,在函数查找里面有广泛的应用。下面就来介绍一下如何使用INDEX函数。根据返回的是值还是引用,函数有两种使用方法。数组形式如果需要返回值或数组值,需要使用数组形式。公式形式:INDEX(array, row_num, [column_num])Array表示需要查找的区域。row_num表示区域的行。column_num则表示列。如果区域里面只有一行或一列,那么后面的参数对应可以省略。行或列其中一个省略,另一个就必须要填入。下面以这个图中的区域来进行举例如何使用。公式1:=INDEX(A1:B8,5,1)单元格区域为A1:B8,第五行,第一列,因此定位到单元格A5,返回结果为D。当公式中行或列其中一个省略,那么会返回整行或整列。公式2:=INDEX(A2:B3,0,2)这个公式,需要先选中两个空单元格,例如这里选择B10:B11,按F2,输入,然后按 CTRL+SHIFT+ENTER,这样两个单元格里面就会返回整列,这里的公式是数组公式,点击以后在编辑栏会看大括号。引用形式返回指定的行与列交叉处的单元格引用,这时需要用到引用形式。公式形式:INDEX(reference, row_num, [column_num], [area_num])reference对一个或多个单元格的引用,如果引用一个不连续区域,要用括号括起来。Row_num和Column_num分别为引用的行号和列标,二者可省略其中一个。省略则为引用一整行或一整列。Area_num,在引用多个不连续区域的时候,使用这个参数来制定。例如区域(A1:A2,B1:B2),Area_num为1,区域为A1:A2;Area_num为2,区域为B1:B2。如果为3,公司返回的结果就会出错,因为引用只有两个区域,第三个区域不存在。因此这里的数值小于等于引用区域的数量,如果省略默认为1。公式1:=INDEX((A2:B3,A5:B6),2,2,2)引用两个不连续区域,指向第二个区域,第二行第二列,返回的结果就是单元格B6的值。公式2:=INDEX((A2:B3,A5:B6),0,2,2)选中两个空单元格,按F2输入公式,按 Ctrl+Shift+Enter,返回引用区域内一整列的数字。以上就是INDEX函数的简要介绍,在实际中都需要多进行练习才能熟练理解与掌握。想了解更多Excel的操作技巧,欢迎关注微信公众号:tobefascinating,一起学习,一起进步。编辑于 2019-04-19 19:44Microsoft ExcelExcel 使用Excel 公式赞同 43添加评论分享喜欢收藏申请转载文章被以下专栏收录Excel分享各类实用Excel操
Excel函数公式:你真的了解INDEX函数吗(一)? - 知乎切换模式写文章登录/注册Excel函数公式:你真的了解INDEX函数吗(一)?Excel函数公式提供最实用的Excel函数公式,办公技巧! INDEX函数是Excel中广泛应用的查找引用函数,除自身具有按位置调取数据的功能外,INDEX函数还可以和其它函数结合使用,其功能非常的强大……可见INDEX函数是职场必备的函数之一。一、INDEX函数语法解析及基础用法。作用:返回表格或区域中的值或值的应用。语法:INDEX(array,row_num,[column_num])。解释:INDEX(数组或区域,行号,列号)。1、如果数组只包含一行或一列,则对应的参数Row_num或Column_num为可选参数。2、如果数组有多行或多列,但只使用参数Row_num或Column_num,函数INDEX返回数组中的整行或整列,且返回值也为数组。3、如果同时使用参数Row_num或Column_num,函数INDEX返回Row_num和Column_num交叉处的单元格中的值。4、如果将Row_num或Column_num设置为(零),函数INDEX则分段返回真个列或行的数组数值。5、若要使用以数组形式返回的值,请将INDEX函数以数组公式形式输入,对于行以水平单元格区域的形式输入,对于列以垂直单元格区域的形式输入。若要输入数组公式,请按Ctrl+Shift+Enter。示例1:方法: 在目标单元格中输入公式:=INDEX(B3:B9,5)。示例2:方法: 在目标单元格中输入公式:=INDEX(B3:F3,4)。示例3:方法: 在目标单元格中输入公式:=INDEX(A3:F9,3,3)。二、INDEX函数隔行取值。方法: 1、选定目标单元格。2、输入公式:=INDEX($A$3:$A$10,COLUMN(A1)+(ROW(A1)-1)*2)。3、Ctrl+Enter填充。三、INDEX函数隔列取值。方法: 1、选定目标单元格。2、输入公式:=INDEX($C4:$J4,COLUMN(A1)*2)。3、Ctrl+Enter填充。四、INDEX函数按条件取整行数据。方法: 1、选定目标单元格。2、输入公式:=INDEX($B$4:$I$10,MATCH($A$14,$A$4:$A$10),COLUMN(A1))3、Ctrl+Enter填充。五、INDEX函数按条件取整列数据。方法: 1、选定目标单元格。2、输入公式:=INDEX($B$3:$E$9,ROW(A1),MATCH($H$2,$B$2:$E$2,0))3、Ctrl+Enter填充。发布于 2018-01-15 23:12Excel 函数Excel 技巧Excel 公式赞同 1728 条评论分享喜欢收藏申请
百度安全验证
网络不给力,请稍后重试
返回首页
问题反馈
【Excel技巧】- 办公常用的十大函数@INDEX函数 - 知乎首发于SUT事务所切换模式写文章登录/注册【Excel技巧】- 办公常用的十大函数@INDEX函数StevenSave Your(U) Time - 节约您的时间! 上一篇和大家讲解了MATCH函数,其实和该函数青梅竹马的就是今天的主角INDEX函数。为什么这么说呢,因为这两个函数经常搭配使用,能发挥强大的作用哦。下面我从基础开始介绍。一 函数介绍 INDEX中文有“索引”的意思,返回表或区域中的值或对值的引用。函数INDEX()有两种形式:数组形式和引用形式。数组形式通常返回数值或数值数组;引用形式通常返回引用。(一)数组形式说明:返回表格或数组中的元素值,此元素由行号和列号的索引值给定。当函数 INDEX 的第一个参数为数组常量时,使用数组形式。语法:INDEX(array, row_num, [column_num])参数:array:必需。单元格区域或数组常量。如果数组只包含一行或一列,则相对应的参数 Row_num 或 Column_num 为可选参数。如果数组有多行和多列,但只使用 Row_num 或 Column_num,函数 INDEX 返回数组中的整行或整列,且返回值也为数组。row_num:必需。选择数组中的某行,函数从该行返回数值。如果省略 Row_num,则必须有 Column_num。column_num:可选。选择数组中的某列,函数从该列返回数值。如果省略 Column_num,则必须有 Row_num。备注:如果同时使用参数 row_num 和 column_num,函数 INDEX 返回 row_num 和 column_num 交叉处的单元格中的值。如果将 row_num 或 column_num 设置为 0(零),函数 INDEX 则分别返回整个列或行的数组数值。若要使用以数组形式返回的值,请将 INDEX 函数以数组公式形式输入,对于行以水平单元格区域的形式输入,对于列以垂直单元格区域的形式输入。若要输入数组公式,请按 Ctrl+Shift+Enter。row_num 和 column_num 必须指向数组中的一个单元格;否则,INDEX 返回 错误值 #REF!。(二)引用形式说明:返回指定的行与列交叉处的单元格引用。如果引用由不连续的选定区域组成,可以选择某一选定区域。语法:INDEX(reference, row_num, [column_num], [area_num])参数:reference:必需。对一个或多个单元格区域的引用。如果为引用输入一个不连续的区域,必须将其用括号括起来。如果引用中的每个区域只包含一行或一列,则相应的参数 row_num 或 column_num 分别为可选项。例如,对于单行的引用,可以使用函数 INDEX(reference,,column_num)。row_num:必需。引用中某行的行号,函数从该行返回一个引用。column_num:可选。引用中某列的列标,函数从该列返回一个引用。area_num:可选。选择引用中的一个区域,以从中返回 row_num 和 column_num 的交叉区域。选中或输入的第一个区域序号为 1,第二个为 2,依此类推。如果省略 area_num,则 INDEX 使用区域 1。备注:reference 和 area_num 选择了特定的区域后,row_num 和 column_num 将进一步选择特定的单元格:row_num 1 为区域的首行,column_num 1 为首列,以此类推。函数 INDEX 返回的引用即为 row_num 和 column_num 的交叉区域。如果将 row_num 或 column_num 设置为 0,函数 INDEX 分别返回对整列或整行的引用。row_num、column_num 和 area_num 必须指向 reference 中的单元格;否则,INDEX 返回 错误值 #REF!。如果省略 cow_num 和 column_num,函数 INDEX 返回由 area_num 所指定的引用中的区域。函数 INDEX 的结果为一个引用,且在其他公式中也被解释为引用。根据公式的需要,函数 INDEX 的返回值可以作为引用或是数值。例如,公式 CELL("width",INDEX(A1:B2,1,2)) 等价于公式 CELL("width",B1)。CELL 函数将函数 INDEX 的返回值作为单元格引用。而在另一方面,公式 2*INDEX(A1:B2,1,2) 将函数 INDEX 的返回值解释为 B1 单元格中的数字。二 案例介绍案例一: 一直跟随本公众号学习的小伙伴,一定对下图不陌生,我至少在介绍函数IF、IFS、LOOKUP和VLOOKUP等讲解了。 今天我还是使用这个成绩表分类来讲解INDEX函数。公式:=INDEX($B$12:$C$16,MATCH(C2,$B$12:$B$16,1), 2) 通过上面案例,我们发现至少可以使用6种方法达到要求,可能还有更多的方法能够实现,大家如果有更好的方法,欢迎留言哦。案例二: 还是一个熟悉的案例,客户信息表如下所示: 如果学习过MATCH函数,就可以看到,里面介绍了一个多条件查找功能,是使用VLOOKUP结合MATCH函数完成的。今天再介绍一个方法可以实现一样的功能,详情请见如下动态图。公式:=INDEX($A$2:$F$11, MATCH(A15, $A$2:$A$11,0), MATCH(B15, $A$1:$F$1,0))三 我的总结 通过上面两个案例,大家是不是发现原来函数搭配使用能够实现那么多类似功能,就如同成绩分类,我刚开始只想到3~4种方法,但在和大家分享的过程中,我自己也在慢慢学习,慢慢发现原来还可以有其他方法实现,当然大家可以使用自己觉得最简单的那一个。 大家跟随本公众号学习如有收获,可以留言分享一下,让更多的人加入到分享中来。2016年马上就要结束了,希望大家都有所成长,新的一年再创辉煌^_^微信公众号:SaveUTimeSUT学习交流群:615356012关注公众号,提高效率,节约您的时间!发布于 2017-04-17 14:48Microsoft ExcelExcel 公式Excel 技巧赞同 151 条评论分享喜欢收藏申请转载文章被以下专栏收录SUT事务所SUT事务所 - Save Your(U) Ti
INDEX 函数 - Microsoft 支持
跳转至主内容
Microsoft
支持
支持
支持
主页
Microsoft 365
Office
产品
Microsoft 365
Outlook
Microsoft Teams
OneDrive
OneNote
Windows
Microsoft Edge
更多信息 ...
设备
Surface
电脑配件
移动体验
Xbox
PC 游戏
HoloLens
硬件保修
帐户和计费
帐户
Microsoft Store 和计费
资源
安装 Microsoft 365
社区论坛
Microsoft 365 管理员
小型企业门户
开发人员
教育
上报支持欺诈
更多
购买 Microsoft 365
所有 Microsoft
Global
Microsoft 365
Teams
Windows
Surface
Xbox
折扣专区
企业购
支持
软件
软件
Windows 应用
AI
OneDrive
Outlook
Skype
OneNote
Microsoft Teams
PC 和设备
PC 和设备
购买 Xbox
PC 和平板电脑
配件
娱乐
娱乐
Xbox 与游戏
PC 游戏
企业
企业
Microsoft Cloud
Microsoft 安全
Azure
Dynamics 365
Microsoft 365 商业版
Microsoft 行业
Microsoft Power Platform
开发人员与 IT
开发人员与 IT
开发人员中心
文档
Microsoft Learn
Microsoft 技术社区
Azure 市场
AppSource
Visual Studio
其他
其他
免费下载与安全性
教育
查看站点地图
搜索
搜索帮助
无结果
取消
登录
使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。
Excel
公式和函数
引用
引用
INDEX 函数
INDEX 函数
Microsoft 365 专属 Excel Microsoft 365 Mac 版专属 Excel Excel 网页版 Excel 2021 Excel 2021 for Mac Excel 2019 Excel 2019 for Mac Excel 2016 Excel 2013 更多...更少
INDEX 函数返回表格或区域中的值或值的引用。
使用 INDEX 函数有两种方法:
如果想要返回指定单元格或单元格数组的值,请参阅数组形式.
如果想要返回对指定单元格的引用,请参阅引用形式。
数组形式
说明
返回表元素或数组元素的值,该元素是通过行号和列号索引选定的。
当函数 INDEX 的第一个参数为数组常量时,使用数组形式。
语法
INDEX(array, row_num, [column_num])
INDEX 函数的数组形式具有以下参数:
数组 必需。 单元格区域或数组常量。
如果数组只包含一行或一列,则相对应的参数 row_num 或 column_num 为可选参数。
如果数组有多行和多列,但只使用 row_num 或 column_num,函数 INDEX 返回数组中的整行或整列,且返回值也为数组。
row_num 必需,除非存在 column_num。 选择数组中的某行,函数从该行返回数值。 如果省略 row_num,则需使用 column_num。
Column_num 可选。 选择数组中的某列,函数从该列返回数值。 如果省略 column_num,则需使用 row_num。
备注
如果同时使用 row_num 和 column_num 参数,则 INDEX 返回 row_num 和 column_num 交叉处的单元格中的值。
row_num 和 column_num 均必须指向数组内的单元格;否则,INDEX 将返回错误值 #REF! 错误。
如果将 row_num 或 column_num 设置为 0(零),则 INDEX 将分别返回整列或整行值的数组。 若要使用作为数组返回的值,请输入 INDEX 函数作为数组公式。
注意: 如果你有当前版本的 Microsoft 365,则可在输出区域的左上角单元格中输入公式,然后单击 ENTER 以确认公式为动态数组公式即可。 否则,必须首先选择输出区域,在输出区域的左上角单元格中输入公式(公式必须作为遗留的数组公式进行输入),然后按 CTRL+SHIFT+ENTER 进行确认。 Excel 将使用括号将公式括起来。 有关数组公式的详细信息,请参阅数组公式指南和示例。
示例
示例 1
下面的示例使用 INDEX 函数查找某一行和某一列的交叉单元格中的值。
复制下表中的示例数据,然后将其粘贴进新的 Excel 工作表的 A1 单元格中。 要使公式显示结果,请选中它们,按 F2,然后按 Enter。
数据
数据
苹果
柠檬
香蕉
梨
公式
说明
结果
=INDEX(A2:B3,2,2)
位于区域 A2:B3 中第二行和第二列交叉处的数值。
梨
=INDEX(A2:B3,2,1)
位于区域 A2:B3 中第二行和第一列交叉处的数值。
香蕉
示例 2
此示例在数组公式中使用 INDEX 函数查找一个 2x2 数组中指定两个单元格中的值。
注意: 如果你有当前版本的 Microsoft 365,则可在输出区域的左上角单元格中输入公式,然后单击 ENTER 以确认公式为动态数组公式即可。 否则,必须先选择两个空白单元格,在输出区域左上角的单元格中输入公式,然后按 Ctrl+SHIFT+ENTER 确认公式,才能将公式输入为旧数组公式。 Excel 将使用括号将公式括起来。 有关数组公式的详细信息,请参阅数组公式指南和示例。
公式
说明
结果
=INDEX({1,2;3,4},0,2)
数组的第一行、第二列中找到的数值。 数组包含第一行中的 1 和 2 以及第二行中的 3 和 4。
2
数组(与上面的数组相同)的第二行、第二列中找到的数值。
4
返回页首
引用格式
说明
返回指定的行与列交叉处的单元格引用。 如果引用由不连续的选定区域组成,可以选择某一选定区域。
语法
INDEX(reference, row_num, [column_num], [area_num])
INDEX 函数的引用形式具有以下参数:
参考代码 必需。 对一个或多个单元格区域的引用。
如果为引用输入一个不连续的区域,必须将其用括号括起来。
如果引用中的每个区域均只包含一行(或一列),则 row_num(或 column_num)为可选参数。 例如,对于单行的引用,可以使用函数 INDEX(reference,,column_num)。
row_num 必需。 引用中某行的行号,函数从该行返回一个引用。
Column_num 可选。 引用中某列的列标,函数从该列返回一个引用。
area_num 可选。 选择要返回 row_num 和 column_num 的交叉点的引用区域。 选择或输入的第一个区域的编号为 1,第二个的编号为 2,依此类推。 如果省略 area_num,则 INDEX 使用区域 1。 此处列出的区域必须全部位于一张工作表。 如果指定的区域不位于同一个工作表,将导致 #VALUE!。 错误。 如果需要使用的范围彼此位于不同工作表,建议使用函数 INDEX 的数组形式,并使用其他函数来计算构成数组的范围。 例如,可以使用 CHOOSE 函数计算将使用的范围。
例如,如果引用描述的单元格为 (A1:B4,D1:E4,G1:H4),则 area_num 1 为区域 A1:B4,area_num 2 为区域 D1:E4,而 area_num 3 为区域 G1:H4。
备注
在 reference 和 area_num 选择了特定区域后,row_num 和 column_num 将选择一个特定的单元格:row_num 1 是该区域的第一行,column_num 1 是第一列,依此类推。 INDEX 返回的引用是 row_num 和 column_num 的交叉点。
如果将 row_num 或 column_num 设置为 0(零),INDEX 将分别返回对整列或整行的引用。
row_num、column_num 和 area_num 均必须指向引用中的单元格;否则,INDEX 将返回错误值 #REF! 错误。 如果省略 row_num 和 column_num,则 INDEX 将返回由 area_num 指定的引用区域。
函数 INDEX 的结果为一个引用,且在其他公式中也被解释为引用。 根据公式的需要,函数 INDEX 的返回值可以作为引用或是数值。 例如,公式 CELL("width",INDEX(A1:B2,1,2)) 等价于公式 CELL("width",B1)。 CELL 函数将函数 INDEX 的返回值作为单元格引用。 而在另一方面,公式 2*INDEX(A1:B2,1,2) 将函数 INDEX 的返回值解释为 B1 单元格中的数字。
示例
复制下表中的示例数据,然后将其粘贴进新的 Excel 工作表的 A1 单元格中。 要使公式显示结果,请选中它们,按 F2,然后按 Enter。
水果
价格
计数
苹果
¥6.90
40
香蕉
¥3.40
38
柠檬
¥5.50
15
橙子
¥2.50
25
梨
¥5.90
40
杏
¥28.00
10
腰果
¥35.50
16
花生
¥12.50
20
胡桃
¥17.50
1.2
公式
说明
结果
=INDEX(A2:C6, 2, 3)
区域 A2:C6 中第二行和第三列的交叉处,即单元格 C3 的内容。
38
=INDEX((A1:C6, A8:C11), 2, 2, 2)
第二个区域 A8:C11 中第二行和第二列的交叉处,即单元格 B9 的内容。
1.25
=SUM(INDEX(A1:C11, 0, 3, 1))
对第一个区域 A1:C11 中的第三列求和,即对 C1:C11 求和。
216
=SUM(B2:INDEX(A2:C6, 5, 2))
返回以单元格 B2 开始到单元格区域 A2:A6 中第五行和第二列交叉处结束的单元格区域的和,即单元格区域 B2:B6 的和。
2.42
返回页首
另请参阅
VLOOKUP 函数
MATCH 函数
INDIRECT 函数
数组公式指南和示例
查找和引用函数(参考)
需要更多帮助?
需要更多选项?
发现
社区
了解订阅权益、浏览培训课程、了解如何保护设备等。
Microsoft 365 订阅权益
Microsoft 365 培训
Microsoft 安全性
辅助功能中心
社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。
咨询 Microsoft 社区
Microsoft 技术社区
Windows 预览体验成员
Microsoft 365 预览体验
此信息是否有帮助?
是
否
谢谢!还有关于 Microsoft 的反馈吗?
你能帮助我们改进吗? (向 Microsoft 发送反馈,以便我们提供帮助。)
你对语言质量的满意程度如何?
哪些因素影响了你的体验?
解决了我的问题
指示清晰
易于理解
无行话
图片有帮助
翻译质量
与屏幕上显示的不一致
错误说明
技术性太强
信息还少
图片太少
翻译质量
是否还有其他反馈? (可选)
提交反馈
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。
你的 IT 管理员将能够收集此数据。
隐私声明。
谢谢您的反馈!
×
新增内容
Surface Pro 9
Surface Laptop 5
Surface Studio 2+
Surface Laptop Go 2
Surface Go 3
Microsoft 365
Windows 11 应用程序
Microsoft Store
帐户个人资料
下载中心
订单跟踪
教育
Microsoft 教育版
教育设备
Microsoft Teams 教育版
Microsoft 365 教育版
Office 教育版
教育工作者培训和开发
面向学生和家长的优惠
面向学生的 Azure
企业
Microsoft Cloud
Microsoft 安全
Azure
Dynamics 365
Microsoft 365
Microsoft Advertising
Microsoft 行业
Microsoft Teams
开发人员与 IT
开发人员中心
文档
Microsoft Learn
Microsoft 技术社区
Azure 市场
AppSource
Microsoft Power Platform
Visual Studio
公司
招贤纳士
关于 Microsoft
公司新闻
Microsoft 隐私
投资人
可持续发展
中文(中国)
加利福尼亚州消费者隐私法案(CCPA)选择退出图标
你的隐私选择
加利福尼亚州消费者隐私法案(CCPA)选择退出图标
你的隐私选择
与 Microsoft 联系
隐私
管理 Cookie
使用条款
商标
关于我们的广告
京ICP备09042378号-6
© Microsoft 2024
使用 VLOOKUP、INDEX 或 MATCH 查找值 - Microsoft 支持
跳转至主内容
Microsoft
支持
支持
支持
主页
Microsoft 365
Office
产品
Microsoft 365
Outlook
Microsoft Teams
OneDrive
OneNote
Windows
Microsoft Edge
更多信息 ...
设备
Surface
电脑配件
移动体验
Xbox
PC 游戏
HoloLens
硬件保修
帐户和计费
帐户
Microsoft Store 和计费
资源
安装 Microsoft 365
社区论坛
Microsoft 365 管理员
小型企业门户
开发人员
教育
上报支持欺诈
更多
购买 Microsoft 365
所有 Microsoft
Global
Microsoft 365
Teams
Windows
Surface
Xbox
折扣专区
企业购
支持
软件
软件
Windows 应用
AI
OneDrive
Outlook
Skype
OneNote
Microsoft Teams
PC 和设备
PC 和设备
购买 Xbox
PC 和平板电脑
配件
娱乐
娱乐
Xbox 与游戏
PC 游戏
企业
企业
Microsoft Cloud
Microsoft 安全
Azure
Dynamics 365
Microsoft 365 商业版
Microsoft 行业
Microsoft Power Platform
开发人员与 IT
开发人员与 IT
开发人员中心
文档
Microsoft Learn
Microsoft 技术社区
Azure 市场
AppSource
Visual Studio
其他
其他
免费下载与安全性
教育
查看站点地图
搜索
搜索帮助
无结果
取消
登录
使用 Microsoft 登录
登录或创建帐户。
你好,
使用其他帐户。
你有多个帐户
选择要登录的帐户。
使用 VLOOKUP、INDEX 或 MATCH 查找值
Microsoft 365 专属 Excel Excel 网页版 Excel 2021 Excel 2019 Excel 2016 Excel 2013 更多...更少
提示: 尝试使用新的 XLOOKUP 和 XMATCH 函数,它们是本文所述函数的改进版。 这些新函数适用范围广,默认情况下返回精确匹配项,与以前函数相比,使用起来更容易、更方便。
假设你有一个办公室位置号码表,你需要知道每间办公室都有哪些员工。 电子表格内容较多,所以你可能认为这是一项具有挑战性的任务。 其实用查找函数很容易做到。
VLOOKUP 和 HLOOKUP 函数,以及 INDEX 和 MATCH是 Excel 中一些最有用的函数。
注意: Excel 中不再提供“查找向导”功能。
下面是如何使用 VLOOKUP 的示例。
=VLOOKUP(B2,C2:E7,3,TRUE)
在此示例中,B2 是第一个 参数,即函数运行所需的数据元素。 VLOOKUP 第一个参数是要查找的值。 此参数可以是单元格引用,也可以是固定值,例如“smith”或 21,000。 第二个参数是单元格搜索范围 C2-:E7,VLOOKUP 在其中搜索要查找的值。 第三个参数是单元格范围内包含所查找值的列。
第四个参数可选。 输入 True 或 False。 如果输入 TRUE 或留空此参数,则函数将返回第一个参数中指定的值的近似匹配。 如果输入 FALSE,函数将匹配第一个参数提供的值。 换言之,可以自由选择是将第四个参数留空,或是输入 TRUE。
此示例演示函数的工作方式。 在单元格 B2(第一个参数)中输入值后,VLOOKUP 搜索单元格 C2-E7(第二个参数),并从范围中的第三列 E 列(第三个参数)返回最接近的近似匹配。
第四个参数为空,因此函数返回近似匹配。 如果未返回结果,必须输入 C 或 D 列中的某个值才能得到结果。
熟悉 VLOOKUP 后,使用 HLOOKUP 函数应该不会太难。 输入相同的参数,只不过 HLOOKUP 在行中查找值,而不是在列中。
使用 INDEX 和 MATCH 代替 VLOOKUP
使用 VLOOKUP 存在一些限制,即 VLOOKUP 函数只能从左到右查找值。 这意味着包含查找值的列应始终位于包含返回值列的左侧。 现在,如果电子表格不是以这种方式生成,则不要使用 VLOOKUP。 可以使用 INDEX 和 MATCH 组合函数代替。
此示例显示了一个小列表,其中要搜索的值“芝加哥”不在最左侧的列中。 因此,我们无法使用 VLOOKUP。 我们将改用 MATCH 函数在 B1:B11 范围内查找芝加哥。 它在第 4 行中找到。 然后,INDEX 使用该值作为查找参数,并在第 4 列(D 列)中查找芝加哥的人口。 所使用的公式显示在单元格 A14 中。
有关使用 INDEX 和 MATCH 代替 VLOOKUP 的更多示例,请在 https://www.mrexcel.com/excel-tips/excel-vlookup-index-match/ 上参阅由 Microsoft MVP 的 Bill Jelen 撰写的文章。
不妨尝试一下
如果您希望用自己的数据尝试之前先测试查找函数,这里提供了一些示例数据。
VLOOKUP 的工作示例
将以下数据复制到空白电子表格中。
提示: 在将数据粘贴到 Excel 中之前,请将 A 列到 C 列的列宽设置为 250 像素,并单击“自动换行”(“开始”选项卡上的“对齐方式”组)。
密度
粘度
温度
0.457
3.55
500
0.525
3.25
400
0.606
2.93
300
0.675
2.75
250
0.746
2.57
200
0.835
2.38
150
0.946
2.17
100
1.09
1.95
50
1.29
1.71
0
公式
说明
结果
=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 列的值。
1.71
HLOOKUP 示例
复制此表中的所有单元格,然后将其粘贴到空白 Excel 工作表的单元格 A1 中。
提示: 在将数据粘贴到 Excel 中之前,请将 A 列到 C 列的列宽设置为 250 像素,并单击“自动换行”(“开始”选项卡上的“对齐方式”组)。
车轴
轴承
螺钉
4
4
9
5
7
10
6
8
11
公式
说明
结果
=HLOOKUP("车轴", A1:C4, 2, TRUE)
在首行查找车轴,并返回同列(列 A)中第 2 行的值。
4
=HLOOKUP("轴承", A1:C4, 3, FALSE)
在首行查找轴承,并返回同列(列 B)中第 3 行的值。
7
=HLOOKUP("B", A1:C4, 3, TRUE)
在首行查找 B,并返回同列中第 3 行的值。 因为找不到 B 的完全匹配项,将使用第 1 行列 A 中小于 B 的最大值 "车轴"。
5
=HLOOKUP("螺栓", A1:C4, 4)
在首行查找螺栓,并返回同列(列 C)中第 4 行的值。
11
=HLOOKUP(3, {1,2,3;"a","b","c";"d","e","f"}, 2, TRUE)
在三行数组常量中查找数字 3,并返回同列(本例中为第三列)中第 2 行的值。 数组常量中有三行数值,并且每行都用分号 (;) 分隔。 因为在第 2 行和第 3 列(同一列)中找到 c,因此将返回 c。
c
INDEX 和 MATCH 示例
最后一个示例使用 INDEX 和 MATCH 函数一起为五座城市中的每座城市分别返回最早的发票编号及其相应的日期。 由于日期返回为数字,我们使用 TEXT 函数将其格式设置为日期。 INDEX 函数实际使用 MATCH 函数的结果作为其参数。 INDEX 和 MATCH 函数的组合在每个公式中使用两次,首先返回发票编号,然后返回日期。
复制此表中的所有单元格,然后将其粘贴到空白 Excel 工作表的单元格 A1 中。
提示: 在将数据粘贴到 Excel 中之前,请将 A 列到 D 列的列宽设置为 250 像素,并单击“自动换行”(“开始”选项卡上的“对齐方式”组)。
发票
城市
发票日期
按城市显示的最早发票,包含日期
3115
广州
12/4/7
="广州 = "&INDEX($A$2:$C$33,MATCH("广州",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("广州",$B$2:$B$33,0),3),"yy/m/d")
3137
广州
12/4/9
="武汉 = "&INDEX($A$2:$C$33,MATCH("武汉",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("武汉",$B$2:$B$33,0),3),"yy/m/d")
3154
广州
12/4/11
="张家口 = "&INDEX($A$2:$C$33,MATCH("张家口",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("张家口",$B$2:$B$33,0),3),"yy/m/d")
3191
广州
12/4/21
="三亚 = "&INDEX($A$2:$C$33,MATCH("三亚",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("三亚",$B$2:$B$33,0),3),"yy/m/d")
3293
广州
12/4/25
="长春 = "&INDEX($A$2:$C$33,MATCH("长春",$B$2:$B$33,0),1)& ", 发票日期:" & TEXT(INDEX($A$2:$C$33,MATCH("长春",$B$2:$B$33,0),3),"yy/m/d")
3331
广州
12/4/27
3350
广州
12/4/28
3390
广州
12/5/1
3441
广州
12/5/2
3517
广州
12/5/8
3124
武汉
12/4/9
3155
武汉
12/4/11
3177
武汉
12/4/19
3357
武汉
12/4/28
3492
武汉
12/5/6
3316
张家口
12/4/25
3346
张家口
12/4/28
3372
张家口
12/5/1
3414
张家口
12/5/1
3451
张家口
12/5/2
3467
张家口
12/5/2
3474
张家口
12/5/4
3490
张家口
12/5/5
3503
张家口
12/5/8
3151
三亚
12/4/9
3438
三亚
12/5/2
3471
三亚
12/5/4
3160
长春
12/4/18
3328
长春
12/4/26
3368
长春
12/4/29
3420
长春
12/5/1
3501
长春
12/5/6
快速引用卡:VLOOKUP 刷新器
查找和引用函数(引用)
在 VLOOKUP 函数中使用 table_array 参数
需要更多帮助?
需要更多选项?
发现
社区
了解订阅权益、浏览培训课程、了解如何保护设备等。
Microsoft 365 订阅权益
Microsoft 365 培训
Microsoft 安全性
辅助功能中心
社区可帮助你提出和回答问题、提供反馈,并听取经验丰富专家的意见。
咨询 Microsoft 社区
Microsoft 技术社区
Windows 预览体验成员
Microsoft 365 预览体验
此信息是否有帮助?
是
否
谢谢!还有关于 Microsoft 的反馈吗?
你能帮助我们改进吗? (向 Microsoft 发送反馈,以便我们提供帮助。)
你对语言质量的满意程度如何?
哪些因素影响了你的体验?
解决了我的问题
指示清晰
易于理解
无行话
图片有帮助
翻译质量
与屏幕上显示的不一致
错误说明
技术性太强
信息还少
图片太少
翻译质量
是否还有其他反馈? (可选)
提交反馈
按“提交”即表示你的反馈将用于改进 Microsoft 产品和服务。
你的 IT 管理员将能够收集此数据。
隐私声明。
谢谢您的反馈!
×
新增内容
Surface Pro 9
Surface Laptop 5
Surface Studio 2+
Surface Laptop Go 2
Surface Go 3
Microsoft 365
Windows 11 应用程序
Microsoft Store
帐户个人资料
下载中心
订单跟踪
教育
Microsoft 教育版
教育设备
Microsoft Teams 教育版
Microsoft 365 教育版
Office 教育版
教育工作者培训和开发
面向学生和家长的优惠
面向学生的 Azure
企业
Microsoft Cloud
Microsoft 安全
Azure
Dynamics 365
Microsoft 365
Microsoft Advertising
Microsoft 行业
Microsoft Teams
开发人员与 IT
开发人员中心
文档
Microsoft Learn
Microsoft 技术社区
Azure 市场
AppSource
Microsoft Power Platform
Visual Studio
公司
招贤纳士
关于 Microsoft
公司新闻
Microsoft 隐私
投资人
可持续发展
中文(中国)
加利福尼亚州消费者隐私法案(CCPA)选择退出图标
你的隐私选择
加利福尼亚州消费者隐私法案(CCPA)选择退出图标
你的隐私选择
与 Microsoft 联系
隐私
管理 Cookie
使用条款
商标
关于我们的广告
京ICP备09042378号-6
© Microsoft 2024
Excel INDEX 函数 - 返回表格或数组中的元素值,此元素由行号和列号的索引值给定
w3schools 教程
HTML
CSS
JAVASCRIPT
BOOTSTRAP
JQUERY
PHP
SQL
PYTHON
PYTHON2
JAVA
C
C++
C#
Linux
AI
教程库
参考手册
测验
练习
HOWTO
FAQ
Excel 函数参考手册
Excel 函数参考手册
数学和三角函数
财务函数
查找和引用函数
逻辑函数
文本函数
统计函数
工程函数
兼容性函数
加载项和自动化函数
信息函数
多维数据集函数
日期和时间函数
数据库函数
Web函数
INDEX 函数
本文介绍 Microsoft Excel 中 INDEX 函数的公式语法和用法。
数组形式
说明
返回表格或数组中的元素值,此元素由行号和列号的索引值给定。
当函数 INDEX 的第一个参数为数组常量时,使用数组形式。
语法
INDEX(array, row_num, [column_num])
INDEX 函数语法具有下列参数:
Array 必需。单元格区域或数组常量。
如果数组只包含一行或一列,则相对应的参数 Row_num 或 Column_num 为可选参数。
如果数组有多行和多列,但只使用 Row_num 或 Column_num,函数 INDEX 返回数组中的整行或整列,且返回值也为数组。
Row_num 必需。选择数组中的某行,函数从该行返回数值。如果省略 Row_num,则必须有 Column_num。
Column_num 可选。选择数组中的某列,函数从该列返回数值。如果省略 Column_num,则必须有 Row_num。
备注
如果同时使用参数 Row_num 和 Column_num,函数 INDEX 返回 Row_num 和 Column_num 交叉处的单元格中的值。
如果将 Row_num 或 Column_num 设置为 0(零),函数 INDEX 则分别返回整个列或行的数组数值。若要使用以数组形式返回的值,请将 INDEX 函数以数组公式形式输入,对于行以水平单元格区域的形式输入,对于列以垂直单元格区域的形式输入。若要输入数组公式,请按 Ctrl+Shift+Enter。
注意: 在 Excel Web App 中,不能创建数组公式。
Row_num 和 Column_num 必须指向数组中的一个单元格;否则,INDEX 返回 错误值 #REF!。
示例
示例 1
下面的示例使用 INDEX 函数查找某一行和某一列的交叉单元格中的值。
复制下表中的示例数据,然后将其粘贴进新的 Excel 工作表的 A1 单元格中。要使公式显示结果,请选中它们,按 F2,然后按 Enter。如果需要,可调整列宽以查看所有数据。
数据
数据
苹果
柠檬
香蕉
梨
公式
说明
结果
=INDEX(A2:B3,2,2)
位于区域 A2:B3 中第二行和第二列交叉处的数值。
梨
=INDEX(A2:B3,2,1)
位于区域 A2:B3 中第二行和第一列交叉处的数值。
香蕉
示例 2
此示例在数组公式中使用 INDEX 函数查找一个 2x2 数组中指定两个单元格中的值。
在此例中,选择任意两个垂直单元格,如 A1:A2,将下列公式 =INDEX({1,2;3,4},0,2) 粘贴到第一个单元格中,然后按 CTRL+SHIFT+ENTER。当作为数组公式输入时,Excel 会自动将公式粘贴到第二个单元格中。
公式
说明
结果
=INDEX({1,2;3,4},0,2)
数组的第一行、第二列中找到的数值。数组包含第一行中的 1 和 2 以及第二行中的 3 和 4。
2
数组(与上面的数组相同)的第二行、第二列中找到的数值。
4
注意: 这是数组公式,需使用 Ctrl+Shift+Enter 输入。Excel 会自动将公式括在大括号 {} 中。如果尝试自己输入,Excel 会将公式作为文本显示。如果不使用 Ctrl+Shift+Enter,则公式将返回一个 #VALUE! 错误。
引用形式
说明
返回指定的行与列交叉处的单元格引用。如果引用由不连续的选定区域组成,可以选择某一选定区域。
语法
INDEX(reference, row_num, [column_num], [area_num])
INDEX 函数语法具有下列参数:
Reference 必需。对一个或多个单元格区域的引用。
如果为引用输入一个不连续的区域,必须将其用括号括起来。
如果引用中的每个区域只包含一行或一列,则相应的参数 Row_num 或 Column_num 分别为可选项。例如,对于单行的引用,可以使用函数 INDEX(reference,,column_num)。
Row_num 必需。引用中某行的行号,函数从该行返回一个引用。
Column_num 可选。引用中某列的列标,函数从该列返回一个引用。
Area_num 可选。在引用中选择要从中返回 Row_num 和 Column_num 的交叉处的区域。选择或输入的第一个区域编号为 1,第二个为 2,依此类推。如果省略 Area_num,则 INDEX 使用区域 1。 此处列出的区域必须全部位于一张工作表。 如果指定的区域不位于同一个工作表,将导致 #VALUE! 错误。 如果需要使用的范围彼此位于不同工作表,建议使用函数 INDEX 的数组形式,并使用其他函数来计算构成数组的范围。 例如,可以使用 CHOOSE 函数计算将使用的范围。
例如,如果引用描述的单元格为 (A1:B4,D1:E4,G1:H4),则 Area_num 1 为区域 A1:B4,Area_num 2 为区域 D1:E4,而 Area_num 3 为区域 G1:H4。
备注
Reference 和 Area_num 选择了特定的区域后,Row_num 和 Column_num 将进一步选择特定的单元格:Row_num 1 为区域的首行,Column_num 1 为首列,以此类推。函数 INDEX 返回的引用即为 Row_num 和 Column_num 的交叉区域。
如果将 Row_num 或 Column_num 设置为 0,函数 INDEX 分别返回对整列或整行的引用。
Row_num、Column_num 和 Area_num 必须指向 reference 中的单元格;否则,INDEX 返回 错误值 #REF!。如果省略 Row_num 和 Column_num,函数 INDEX 返回由 Area_num 所指定的引用中的区域。
函数 INDEX 的结果为一个引用,且在其他公式中也被解释为引用。根据公式的需要,函数 INDEX 的返回值可以作为引用或是数值。例如,公式 CELL("width",INDEX(A1:B2,1,2)) 等价于公式 CELL("width",B1)。CELL 函数将函数 INDEX 的返回值作为单元格引用。而在另一方面,公式 2*INDEX(A1:B2,1,2) 将函数 INDEX 的返回值解释为 B1 单元格中的数字。
注意: Excel Web App 中 CELL 函数不可用。
示例
复制下表中的示例数据,然后将其粘贴进新的 Excel 工作表的 A1 单元格中。要使公式显示结果,请选中它们,按 F2,然后按 Enter。如果需要,可调整列宽以查看所有数据。
水果
价格
计数
苹果
¥6.90
40
香蕉
¥3.40
38
柠檬
¥5.50
15
橙子
¥2.50
25
梨
¥5.90
40
杏
¥28.00
10
腰果
¥35.50
16
花生
¥12.50
20
胡桃
¥17.50
12
公式
说明
结果
=INDEX(A2:C6, 2, 3)
区域 A2:C6 中第二行和第三列的交叉处,即单元格 C3 的内容。
38
=INDEX((A1:C6, A8:C11), 2, 2, 2)
第二个区域 A8:C11 中第二行和第二列的交叉处,即单元格 B9 的内容。
1.25
=SUM(INDEX(A1:C11, 0, 3, 1))
对第一个区域 A1:C11 中的第三列求和,即对 C1:C11 求和。
216
=SUM(B2:INDEX(A2:C6, 5, 2))
返回以单元格 B2 开始到单元格区域 A2:A6 中第五行和第二列交叉处结束的单元格区域的和,即单元格区域 B2:B6 的和。
2.42
另请参阅
VLOOKUP 函数
MATCH 函数
INDIRECT 函数
数组公式的指南和示例
查找和引用函数(参考)
颜色选择器
读后有收获微信请站长喝咖啡
报告错误
打印
关于
学习路线
×
错误报告
如果您发现内容有误或提出修改建议,请随时向我们发送 E-mail 邮件:
421660149@qq.com
您的建议:
您的 E-mail:
页面地址:
内容描述:
提交
×
感谢您的帮助!
您的建议已发送到 W3schools。
W3Schools 在线教程提供的内容仅用于学习和测试,不保证内容的正确性。通过使用本站内容随之而来的风险与本站无关。
Copyright 2020-2024 关于我们 | 隐私条款 | 学习路线 | 京ICP备14045893号-9