Excel中最牛的函数不是vlookup,也不是sumifs,而是.....

论坛 期权论坛 期权     
Excel精英培训   2019-7-14 03:44   2643   0


前言:很多同学想了解indirect详细用法,兰色就把原来分享过的一篇教程重新推送给同学们。

也许在excel中你认为vlookup查找最牛、Sumifs求和最牛,但它们都可以用其他函数所替换,而最有一个函数却无法用其他函数替代,高手写的公式中经常会有它的身影。它就是:
Indirect函数


一、Indirect函数简介
1、基本用法:可以把一个字符表达式或名称转换为地址引用。在excel也只有它可以实现这样的功能。


【例1】单元格中A1值是100
= A1 返回值100
= "A1" 返回的是字符串 A1
= indirect("A1") 则返回100
= Indirect("A" & 1) 返回 100


2、用途:在引用地址中插入变量并用&连接起来,然后用indirect函数把字符串转换成引用。可以做到动态引用。




二、indriect函数应用

1、生成二级下拉菜单

步骤1:设置数据源区域。就是把手机名称和型号整理成如下图格式备用,存放的位置随意。


步骤2:批量定义名称。选取手机名称和型号区域后,打开指定名称窗口(excel2003版里,插入菜单 - 定义 - 指定,07和10版 公式选项卡 - 定义的名称组 - 根据所选内容创建),选取窗口上的“首行”复选框。如下图所示。

步骤3:设置数据有效性。选取型号列,打开数据有效性窗口(打开方法见昨天的教程),在来源中输入=indirect(D5)


进行如下设置后,二级联动菜单设置完成。

2、多表合并

如下图所示,要求把每天的销售明细合并到汇总表中。
日报


日报合并

公式:=INDIRECT(B$1&"!B"&ROW())
公式说明:
B$1&"!B"&ROW(),根据ROW函数产生的行号,生成单元格地址。例 公式在第2行时,ROW()结果是2,B$1&"!B"&ROW()的结果就是:
1!B2


3、多表查找
【例】工资表模板中,每个部门一个表。

在查询表中,要求根据提供的姓名,从销售~综合5个工作表中查询该员工的基本工资。


=VLOOKUP(A2,INDIRECT(LOOKUP(1,0/COUNTIF(INDIRECT({"销售";"服务";"人事";"综合";"财务"}&"!a:a"),A2),{"销售";"服务";"人事";"综合";"财务"})&"!a:g"),7,0)

4、多表求和

【例】如下图所示,有1日~5日5个列相同、行数不同的明细表,要求汇总出每个产品的销量之和。
分表:


汇总表


公式:
=SUMPRODUCT(SUMIF(INDIRECT(ROW($1:$5)&"日!b:b"),A2,INDIRECT(ROW($1:$5)&"日!c:c")))

兰色说:今天介绍的indirect函数用法都是基本用法,真正高级的用法是在数组公式中的应用,以后兰色整理后会再分享出来。

如果你是新同学,长按下面二维码图片,点上面”识别图中二维码“然后再点关注,每天可以收到一篇兰色最新写的excel教程。


分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:863
帖子:172
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP