多语言展示
当前在线:243今日阅读:39今日分享:10

excel中的indirect函数怎样使用

现在我们来学习怎么使用indirect函数跨表查询,当然还要配合sumif和sum函数。
工具/原料
1

excel

2

indirect,sumif,sum

方法/步骤
1

打开excel2010,打开如图所示文件,共有四个表格:1班,2班,3班,查询表我们需要在查询表中跨表查询成绩。

2

我们首先使用sumif函数,因为sumif能使用跨表的数组。在查询表的B2单元格输入:=sumif(会出现提示:SUMIF(range,criteria,[sum_range])

3

SUMIF(range,criteria,[sum_range])就是SUMIF函数的格式range是指条件的范围,在当前表格中,这个范围就是:“1班”,“2班”,“3班”三个表格的A列这个跨表的范围要怎样表示,在这里我们需要使用间接引用函数indirectindirect(row(1:3)&'班!A:A')row(1:3)是一个数组,相当于{1,2,3},通过&与“班!A:A”相连,因为indirect 中的参数必须是文本,所以用''引起来。row(1:3)&'班!A:A'也就相当于“1班”,“2班”,“3班”三个表格的A列

4

criteria就是指要查询的对象:姓名C02sum_range是指求和范围,这个范围也是跨表的这个跨表的范围是:1班”,“2班”,“3班”三个表格的B列表示为:indirect(row(1:3)&'班!B:B')

5

这样就完成了sumif函数,如下所示:SUMIF(INDIRECT(ROW(1:3)&'班!A:A'),A2,INDIRECT(ROW(1:3)&'班!B:B'))在任务栏单击,然后按F9就可以看到最后结果,结果是一个数组{0,0,69}

6

我们需要对这个数组求和所以添加SUM函数=SUM(SUMIF(INDIRECT(ROW(1:3)&'班!A:A'),A2,INDIRECT(ROW(1:3)&'班!B:B'))) 因为它是数组公式,所以需要按 Ctrl+Shift+Enter确认最终得到={SUM(SUMIF(INDIRECT(ROW(1:3)&'班!A:A'),A2,INDIRECT(ROW(1:3)&'班!B:B')))}计算结果为69

7

通过indirect,sumif,sum函数我们可以轻松实现跨表查询数据。

注意事项
1

谢谢您的阅读,希望能给您带来一点收获,麻烦您 “点赞”和“投票”,谢谢!

2

如果“关注我”,不懂的可以联系我,详细解答。

推荐信息